为什么 moment.js subtract 方法不起作用?
Why does moment.js subtract method not works?
我正在尝试使用 moment.js
将给定日期减去 7 天
var date ="2015-10-19";
var now = moment(date);
var oneWeekAgo = moment(date).subtract(7,'days');
当我检查 now
和 oneWeekAgo
的值都具有相同的内容时。
Moment {_isAMomentObject: true, _i: "2015-10-19", _f: "YYYY-MM-DD ", _isUTC: false, _pf: Object…}
但是,如果我将当前时间减去 7 天,它就可以了。
var oneWeekAgo = moment().subtract(7,'days');
我注意到没有参数的 instanciate a moment 改变了他的结构,将日期存储在 _d
属性而不是 _i
.
Moment {_isAMomentObject: true, _isUTC: false, _pf: Object, _locale: Locale, _d: Tue Oct 13 2015 13:34:50 GMT+0200 (Hora de verano romance)}
为什么会这样?我该如何解决?
谢谢。
momentjs的私有变量没那么简单
_i
只是您用来实例化 momentjs 对象的字符串。它不是日期的当前值。
var date = "2015-10-19";
var now = moment(date);
var oneWeekAgo = moment(date).subtract(7, 'days');
// 2015 10 19
console.log(now.format('YYYY MM DD'));
// 2015 10 12
console.log(oneWeekAgo.format('YYYY MM DD'));
我正在尝试使用 moment.js
将给定日期减去 7 天var date ="2015-10-19";
var now = moment(date);
var oneWeekAgo = moment(date).subtract(7,'days');
当我检查 now
和 oneWeekAgo
的值都具有相同的内容时。
Moment {_isAMomentObject: true, _i: "2015-10-19", _f: "YYYY-MM-DD ", _isUTC: false, _pf: Object…}
但是,如果我将当前时间减去 7 天,它就可以了。
var oneWeekAgo = moment().subtract(7,'days');
我注意到没有参数的 instanciate a moment 改变了他的结构,将日期存储在 _d
属性而不是 _i
.
Moment {_isAMomentObject: true, _isUTC: false, _pf: Object, _locale: Locale, _d: Tue Oct 13 2015 13:34:50 GMT+0200 (Hora de verano romance)}
为什么会这样?我该如何解决? 谢谢。
momentjs的私有变量没那么简单
_i
只是您用来实例化 momentjs 对象的字符串。它不是日期的当前值。
var date = "2015-10-19";
var now = moment(date);
var oneWeekAgo = moment(date).subtract(7, 'days');
// 2015 10 19
console.log(now.format('YYYY MM DD'));
// 2015 10 12
console.log(oneWeekAgo.format('YYYY MM DD'));