JavaScript Date.now() 时间格式叫什么?

问题描述 投票:0回答:1

我想知道在我的文档中写什么。

MDN 将其描述为:

一个数字,表示自 UNIX 纪元以来经过的毫秒数。

W3Schools

将其描述为:

自 1970/01/01 以来的毫秒数

但是,这些只是
描述

Unix 时间 的维基百科页面指出:

Unix 时间是一种描述时间瞬间的系统,定义为自 1970 年 1 月 1 日星期四 00:00:00 协调世界时 (UTC) 以来经过的

数 [...]

秒。不是
Date.now()

返回的毫秒。所以我也不能真正将其称为“unix 时间格式”。



“表示自 UNIX 纪元以来经过的毫秒数”时间格式是否有更简洁的名称?

javascript date time epoch
1个回答
6
投票
第 4.16 节

中定义,并在整个规范中使用。我们称之为“Unix 时间”根本只是一种口语。 在 ECMAScript 规范 8.0 版的第 20.3.1.1 节中,除了“自 1970 年 1 月 1 日 UTC 以来的毫秒数”之外,没有给出时间戳以外的术语。

因此,当提到 JavaScript(和其他地方)中使用的时间戳时,您可以随意将其称为“自 (Unix) 纪元以来的毫秒数”、“以毫秒为单位的 Unix 时间”或“以毫秒为单位的 Unix 时间戳”。 没有比这更简洁的普遍认可的口语术语或标准术语。

关于这个主题的其他几点:

您提供的 W3Schools 链接上的文本犯了一个严重错误,因为它没有指定 UTC。由于 Unix Epoch 是根据 UTC 定义的,因此从它派生的所有时间戳都是基于 UTC 的。

  • 有些人可能将这些时间戳称为“纪元时间”。然而,这是无稽之谈。请避免使用这个术语,因为它意味着时间值本身就是一个纪元。只有

    0
  • 值才能被视为纪元。人们可能会说“基于纪元的时间”,但即便如此,仍然存在“哪个纪元?”的问题。尽管 Unix 纪元很常见,但计算中使用了
  • 多个不同的纪元

    
    
        
    

© www.soinside.com 2019 - 2024. All rights reserved.