JavaScript 日期构造函数和时区

发布于 2024-08-20 02:43:20 字数 152 浏览 4 评论 0原文

JavaScript/ECMAScript/JScript 中的 Date 构造函数允许传递自 1970 年 1 月 1 日午夜以来的毫秒数。无论这是客户端计算机时区的午夜还是格林尼治标准时间的午夜,我都无法找到文档。是哪一个?不同浏览器、版本之间是否可以依赖?这在任何地方都有官方记录吗?

The Date constructor in JavaScript/ECMAScript/JScript allows passing the number of milliseconds since midnight, 1/1/1970. Nowhere can I find documentation whether this is midnight in the client machine's timezone, or midnight GMT. Which is it? Can it be relied on between different browsers and versions? Is this officially documented anywhere?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

无畏 2024-08-27 02:43:20

来自 ECMAScript 规范

时间是在 ECMAScript 中测量的
自 1970 年 1 月 1 日以来的毫秒数
世界标准时间。在时间值中,闰秒是
被忽略。假设有
正好 86,400,000 毫秒/
天。 ECMAScript 数值可以
代表所有整数
–9,007,199,254,740,991 至
9,007,199,254,740,991;这个范围
足以测量时间
任何瞬间的毫秒精度
大约在 285,616 以内
岁月,无论向前还是向后,
从 UTC 时间 1970 年 1 月 1 日起。

实际情况
ECMAScript 支持的时间范围
日期对象稍微小一些:
正好 –100,000,000 天
100,000,000 天相对于
01 开始的午夜
世界标准时间 1970 年 1 月。这给出了一个范围
8,640,000,000,000,000 毫秒
1970 年 1 月 1 日两侧
世界标准时间。

午夜的确切时刻
UTC 时间 1970 年 1 月 1 日开始
由值+0表示。

因此,为了回答您的问题,它是协调世界时

From the ECMAScript specification:

Time is measured in ECMAScript in
milliseconds since 01 January, 1970
UTC. In time values leap seconds are
ignored. It is assumed that there are
exactly 86,400,000 milliseconds per
day. ECMAScript Number values can
represent all integers from
–9,007,199,254,740,991 to
9,007,199,254,740,991; this range
suffices to measure times to
millisecond precision for any instant
that is within approximately 285,616
years, either forward or backward,
from 01 January, 1970 UTC.

The actual
range of times supported by ECMAScript
Date objects is slightly smaller:
exactly –100,000,000 days to
100,000,000 days measured relative to
midnight at the beginning of 01
January, 1970 UTC. This gives a range
of 8,640,000,000,000,000 milliseconds
to either side of 01 January, 1970
UTC.

The exact moment of midnight at
the beginning of 01 January, 1970 UTC
is represented by the value +0.

So to answer your question, it's Coordinated Universal Time.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文