Moment.js-自unix时代以来,UTC日期为毫秒



我正试图使用moment.js库获取UTC日期(只是为了将其发送到我的服务器(,如下所示:

const eighteenYearsAgoUTC = moment().utc().subtract(18, "years").toDate();
const eighteenYearsAgoUTCSinceUnixEpoch = eighteenYearsAgoUTC.valueOf()
console.log(eighteenYearsAgoUTCSinceUnixEpoch);

自unix epoch以来的毫秒数为:1051875596343

但是。。。如果我在没有utc的情况下也这样做,我会得到相同的结果

const eighteenYearsAgoUTC = moment().subtract(18, "years").toDate();
const eighteenYearsAgoUTCSinceUnixEpoch = eighteenYearsAgoUTC.valueOf()
console.log(eighteenYearsAgoUTCSinceUnixEpoch);

1051875596343

为什么自Unix Epoch以来,UTC日期和本地日期的毫秒数相同?

我的当地日期是:2003年5月2日星期五13:37:00 GMT+0200(中欧(

utc方法只是更改moment解析格式日期的方式。基本信息仍然是一样的。

自大纪元以来的毫秒值始终为UTC。您的两个代码片段都做相同的事情:

  • 获取"现在">
  • 减去18年
  • 获取自Epoch值以来以毫秒为单位的结果

如果你格式化日期或解析日期,你会注意到不同,但你没有做这两件事。

最新更新