我有以下日期
let api_date = '2022-03-01T00:00:00.000Z'
现在,我想从api_date
开始获取前两个日期。基本上现在我需要2022-02-28T00:00:00.000Z
和2022-02-27T00:00:00.000Z
的日期基本上,对于3月1日的api_date,我需要之前的两个日期,即2月28日和2月27日。
我尝试使用以下代码
let t-1 = moment().substract(1, 'days')
let t-2 = moment().subtract(2, 'days')
但这只提供了从当前日期起的前2个日期。即当前日期为3月2日,因此它提供了基于3月2号的前两个日期。
我如何使用moment来获取我当前指定的日期,并在此基础上获取之前的2个日期。有什么建议可以做到这一点吗?我也看过moment.js的文档,但没有找到确切的答案。
您应该根据想要解析的日期创建一个日期对象,
let api_date = '2022-03-01T00:00:00.000Z'
var dateObj = new Date(api_date);
然后你可以创建一个基于日期对象的时刻对象,就像这样,
var momentObj = moment(dateObj);
然后,如果你执行你的特定逻辑,你会得到你想要的结果,就像这个
let date1 = momentObj.substract(1, 'days')
let date2 = momentObj.substract(2, 'days')
你快到了,你需要把你的日期推迟到现在。否则,它默认为当前日期(正如您所发现的(。
let t-1 = moment(api_date).subtract(1, 'days')
let t-2 = moment(api_date).subtract(2, 'days')