【问题标题】:VSCode Javascript - get exact local new Date() valueVSCode Javascript - 获取确切的本地新日期()值
【发布时间】:2019-09-11 06:00:42
【问题描述】:

目前我机器上的时间是07:55

如果我在我的 vscode 终端中console.log(new Date()),那么我得到的时间是错误的05:55。这是因为我的时区(南非)是 +2。所以在 vscode / node 我的new Date() 显示的是世界时间,而不是我的当地时间。

如果我在一个 .html 文件中 console.log(new Date())(如果我在 Chrome 中运行它),那么我得到的正确时间是 07:55

是节点、vscode 还是其他地方的问题?以及如何解决此问题,以便我的 vscode/node 控制台.log 的时间正确。

console.log(new Date().getHours()) 确实给了我正确的时间7,但我不明白为什么console.log(new Date()) 给了我错误的时间2019-09-11T05:55:00.480Z

console.log(new Date().toLocaleString()) 确实给了我正确的时间,但我不想要那种格式。我只想要基本的new Date() 格式用于数据库。

// 2019-09-11T05:55:00.480Z
console.log(new Date())    

// 9/11/2019, 7:55:00 AM
console.log(new Date().toLocaleString())

【问题讨论】:

  • “我只想要基本的新 Date() 格式”——没有“基本的新 Date() 格式”。使用 Date 类的功能生成您想要的显式格式。
  • @Quentin 好吧,我只是想说明.toLocaleString() 确实给了我正确的时间,但它不再是我可以操纵的日期对象。重点是:为什么 new Date() 不能正确,或者我该如何解决。
  • 正确的。它将包含时区信息。
  • 好的,那我如何在节点中console.log() 非时区new Date() 呢?我真的只是希望前端用户的工作时间看起来一样。

标签: javascript node.js date visual-studio-code vscode-code-runner


【解决方案1】:

您可以在节点中执行new Date().toString() 以从chrome 中获取格式

节点:

console.log(new Date()); // 2019-09-11T06:25:01.665Z
console.log(new Date().toLocaleString()); // 9/11/2019, 1:25:01 PM
console.log(new Date().toString()); // Wed Sep 11 2019 13:25:01 GMT+0700 (GMT+07:00)

【讨论】:

  • console.log(dateObj)toLocaleString 的输出取决于实现。 toString 的输出在ECMA-262 中定义。
【解决方案2】:

node 默认打印 ISO 字符串,chrome 打印调整后的时间。两种情况下的时间戳仍然相同。两种情况下都将保存在数据库中。

您可以通过在 chrome 中执行 new Date().toISOString() 来验证这一点,以查看与 node 相同的输出,并在 chrome 和 node 中检查 new Date().getTime() 以查看它们是否相同

【讨论】:

  • 好吧,有道理,但是有没有办法调整new Date() 来恢复非ISO时间?
  • 你想在数据库中存储什么?时间戳还是字符串形式的日期?
  • 您可以在node中使用new Date().toString()获取chrome格式。
  • @Karthik——时间戳大多是字符串。 2019-09-11T06:25:01.665Z、9/11/2019、1:25:01 PM 和 2019 年 9 月 11 日星期三 13:25:01 GMT+0700 (GMT+07:00) 都是时间戳。您的第二个“答案”应该是对您的第一个答案的修改。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-02-24
  • 2021-01-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多