momentjs toDate()日期返回不同于格式()日期
问题描述:
我正在使用moment 2.16.0
并希望从月的开始日期。有不同的结果toDate()
和format()
方法。这里是jsfiddle。momentjs toDate()日期返回不同于格式()日期
代码: -
var time=moment().subtract(0,'months').startOf("month").format();
console.log(time); //2016-12-01T00:00:00+05:30
var time2=moment().subtract(0, 'months').endOf("month").format();
console.log(time2); //2016-12-31T23:59:59+05:30
var time=moment().subtract(0,'months').startOf("month").toISOString();
console.log(time); //2016-11-30T18:30:00.000Z here i want somethings like 2016-12-01T00:00:00.000Z
var time2=moment().subtract(0, 'months').endOf("month").toISOString();
console.log(time2); // 2016-12-31T18:29:59.999Z here i want somethings like 2016-12-31T59:59:59.000Z
答
工作的所有使用与瞬间当地时间除了toISOString
,这将给你在UTC的字符串。由于你的时区偏离了UTC,所以本地时间字符串(从format
)和UTC时间字符串(从toISOString
)是非常不同的。
在这里,我想有些事情就像2016-12-01T00:00:00.000Z
这将是从什么那一刻实例代表不同的时间。
如果你想在当地时间的ISO-8601格式但的东西,你可以用format
与适当的格式标记的,但你没有在最后湾Z
因为,同样,你”不要处理UTC(“祖鲁”)时间,你正在处理当地时间。
moment().format("YYYY-MM-DDThh:mm:ss.SSS")