【问题标题】:Is Date.now() in local milliseconds since epoch, or milliseconds since epoch in UTC timeDate.now() 是自纪元以来的本地毫秒数,还是自 UTC 时间以来的纪元以来的毫秒数
【发布时间】:2019-12-04 05:37:05
【问题描述】:

我的印象是Date.now() 是我们本地时区中纪元以来的毫秒数。如果是这种情况,我怎样才能在 UTC 时间获得自纪元以来的毫秒数?我猜这将是很长的路要走:

new Date(new Date().toUTCString()).getTime()

有没有更快的方法?

【问题讨论】:

  • 另外,我的印象是Date.now() === new Date().getTime(),但也许不是......
  • 所有表示自 Unix 纪元以来的时间都以 UTC 表示,因为 Unix 纪元本身是根据 UTC 定义的。根据定义,“自纪元以来的本地毫秒数”的任何表示都需要使用 local 纪元。由于夏令时和其他本地时间差异,这也会带来问题。

标签: javascript node.js date utc


【解决方案1】:

Date.now()new Date().getTime() 使用 UTC 表示时间。

【讨论】:

    【解决方案2】:

    来自 MDN:

    Date.now() 方法返回自 1970 年 1 月 1 日 00:00:00 UTC 以来经过的毫秒数。

    link

    【讨论】:

    • 自 1970 年 1 月 1 日 UTC 以来经过的时间,但从哪个时区的角度来看
    • 我不确定你在问什么...... UTC 不是指特定的时区。它是一个通用时间标准,所有其他时区都基于该时间标准。如果您想要使用 UTC 且没有偏移的时区名称,那就是 GMT。
    • 换句话说,就是从纪元UTC时间到当前UTC时间所经过的毫秒数
    • MDN 不规范,ECMA-262 是。 ;-)
    猜你喜欢
    • 1970-01-01
    • 2013-08-19
    • 2013-05-14
    • 2014-09-02
    • 2011-10-24
    • 1970-01-01
    • 2019-02-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多