【发布时间】:2018-12-17 21:42:21
【问题描述】:
我想使用 Moment.js 获取当前日期的最后一个 x 日期。
const moment = require('moment');
let dates;
const dates = [];
const NUM_OF_DAYS = 12; // get last 12 dates.
for (let i = 0; i < NUM_OF_DAYS; i++) {
date = moment();
date.subtract(1, 'day').format('DD-MM-YYYY');
dates.push(date);
}
console.log(dates);
这段代码的结果如下:
[ moment("2018-07-09T11:40:04.663"),
moment("2018-07-09T11:40:04.675"),
moment("2018-07-09T11:40:04.675"),
moment("2018-07-09T11:40:04.675"),
moment("2018-07-09T11:40:04.675"),
moment("2018-07-09T11:40:04.675"),
moment("2018-07-09T11:40:04.675"),
moment("2018-07-09T11:40:04.675"),
moment("2018-07-09T11:40:04.675"),
moment("2018-07-09T11:40:04.675"),
moment("2018-07-09T11:40:04.675"),
moment("2018-07-09T11:40:04.675") ]
这是同一日期,而不是我每次迭代想要的日期。
我知道问题出在date = moment() 行,因为它返回的是当前时间戳,而不是每一步的前一个时间戳。
我该如何解决这个问题?
【问题讨论】:
标签: javascript datetime momentjs