【问题标题】:How does JavaScript's `new Date().getTime()` get the local time in Windows?JavaScript 的 `new Date().getTime()` 如何在 Windows 中获取本地时间?
【发布时间】:2016-07-14 13:29:28
【问题描述】:

我知道各种 Windows 命令行功能,例如:

TIME - 允许您获取和设置时钟时间

wmic os get localdatetime - 返回本地日期时间

wmic os get lastbootuptime - 获取最后一次启动时间,单位为滴答声(我还没有找到获取滴答数的命令行)

当您执行以下操作时,JavaScript 使用什么来获取时间?

var d = new Date();
var time = d.getTime();

这是一个系统调用,如果是,是哪一个?准确度如何?

【问题讨论】:

  • “Javascript”是一种语言。您可以就任何给定的实现提出这个问题。而且它们都是开源的,所以你可以找到。
  • 规格中没有规定精度。
  • “它有多准确?” - 为什么它是准确的?我的意思是,显然JS无法判断设备的系统时钟是否设置为错误的时间,但是为什么您会担心JS不会准确地报告系统时钟的时间呢?
  • @nnnnnn " 准确度如何?"不是,“它相当准确吗?”。 (“合理地”可能会根据[误用]的使用而改变。)
  • 无论如何,FWIW,我有理由期望~15ms 的分辨率或 1/66s 的精度作为“底分母”。跨所有实现的 YMMV 〜更不用说设备了。另请参阅stackoverflow.com/questions/6233927/…(讨论高分辨率计时器 API)

标签: javascript windows command-prompt system-calls


【解决方案1】:

这与JS有关,而不是特定的操作系统:

JavaScript Date 对象提供跨平台的统一行为。时间值可以在系统之间传递以表示同一时刻,如果用于创建本地日期对象,则将反映本地等效时间。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date

【讨论】:

  • 我相信 OP 正在(至少部分地)寻找特定于特定 实现 的“细节”。不知道为什么问题中包含“启动时间”位..
  • 是的,我要求的是特定的实现,而不是 JavaScript 日期的 API 输出行为。至于“启动时间”,我可能应该澄清一下。我列出了示例命令提示符,以试图鼓励有关为获取本地时间而进行的特定于 Windows 的函数调用的答案。如果有的话。
猜你喜欢
  • 2020-08-23
  • 1970-01-01
  • 2020-03-12
  • 1970-01-01
  • 1970-01-01
  • 2011-06-02
  • 2010-09-26
  • 2013-04-10
相关资源
最近更新 更多