momentjs toDate()日期返回不同于格式()日期

问题描述:

我正在使用moment 2.16.0并希望从月的开始日期。有不同的结果toDate()format()方法。这里是jsfiddlemomentjs 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")