javascript – new Date(..).getTime()不等于moment(..).timeJS中的valueOf()?

前端之家收集整理的这篇文章主要介绍了javascript – new Date(..).getTime()不等于moment(..).timeJS中的valueOf()?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
new Date(..).getTime()应以毫秒为单位返回时间戳.根据 documentation of momentJS表达式(..).valueOf()应该做同样的(给定日期返回时间戳,以毫秒为单位).

我检查了以下示例数据:

var timeStampDate = new Date("2015-03-25").getTime(); //timestamp in milliseconds?
> 1427241600000
var timeStampMoment = moment("03-25-2015","MMDDYYYY").valueOf(); //timestamp in milliseconds?
> 1427238000000

你可以看到结果是不一样的.

现在我正在寻找一个函数在momentJS,返回给我完全相同的数据表达式新的Date(..).getTime().

解决方法

日期构造函数 doc

The UTC time zone is used to interpret arguments in ISO 8601 format
that do not contain time zone information

时刻构造函数doc

Unless you specify a timezone offset,parsing a string will create a date in the current timezone

所以指定时刻构造函数中的时区导致与Date相同的行为:

var timeStampMoment = moment("03-25-2015 +0000","MM-DD-YYYY Z").valueOf(); //> 1427241600000
原文链接:https://www.f2er.com/js/152660.html

猜你在找的JavaScript相关文章