MomentJS toISOString结果有何不同?

时间:2016-11-25 11:07:13

标签: momentjs

代码有问题。

var mom = moment("23-11-2016 00:00", "DD-MM-YYYY HH:mm");
alert(mom.toISOString());
//result 2016-11-22T17:00:00.000Z

为什么结果不是2016-11-23T00:00:00.000Z?我如何获得2016-11-23T00:00:00.000Z结果?

提前致谢。

1 个答案:

答案 0 :(得分:4)

作为doc says

  

默认情况下,时刻会以当地时间进行分析和显示。

.toISOString()始终以UTC格式返回时间戳:

  

请注意.toISOString()始终以UTC格式返回时间戳,即使有问题的时刻处于本地模式。这样做是为了与原始JavaScript日期.toISOString()的规范保持一致,如the ES2015 specification中所述。

您可能距离UTC约有7个小时。

如果要以当地时间显示日期,请使用format()

如果您的输入字符串代表UTC时间,请使用moment.utc(String, String);