javascript - 在 NodeJs 中,为什么新的 Date 构造函数将默认时间设置为上午 7 点?

标签 javascript node.js date time

我正在定义一个新的 Date 对象: const 日期 = 新日期(2020, 09, 11); 文档说构造函数的默认时间是: 小时:0, 分钟:0, 秒:0...等等 然而,我得到的结果是:

const date = new Date(2020, 09, 11);
console.log(date);
2020-10-11T07:00:00.000Z

为什么是 7 点?

当我将以下内容放入控制台时:

const date2 = new Date(2020, 09, 11, -7)
console.log(date2)
2020-10-11T00:00:00.000Z

我有点不知所措。

最佳答案

最后的 Z 代表祖鲁时间 = GMT。由于您的时差为 -7,我假设您位于美国太平洋时间。它告诉您您的英国午夜是早上 7 点。

Javascript 在内部跟踪 UTC 时间。这样做的原因是为了简化与互联网上其他用户的全局时间同步。

要显示您的本地时间,请执行以下操作:

console.log(date.toLocaleString());

另请参阅相关问题的答案:How to initialize a JavaScript Date to a particular time zone

关于javascript - 在 NodeJs 中,为什么新的 Date 构造函数将默认时间设置为上午 7 点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69369250/

相关文章:

javascript - 如何迭代 ko.ObservableArray

javascript - 如何使用 Angular 1.5 服务

javascript - 需要从字符串 php 中删除这个特殊字符

javascript - Gmail API Node js-gapi未定义

node.js - 当用户登录时,如何仅更改页面的标题栏?

javascript - mocha.opts 文件中的 --reporter 规范是什么?

javascript - Knex 数据未插入 postgres

javascript - 在 Javascript 中向日期添加天数

sql - 聚合列文本,其中表 a 中的日期位于表 b 中的日期之间

java - 计算两个日期的差异