【问题标题】:Javascript new Date(number) but produced different timezone (Malaysia)Javascript new Date(number) 但产生了不同的时区(马来西亚)
【发布时间】:2018-06-26 07:12:30
【问题描述】:

重要提示:

  1. 机器的日期和时间设置为自动设置
  2. 机器位于马来西亚,时区为GMT+8
  3. 马来西亚没有夏令时

问题:

当使用 Date constructor 时,数值表示自 1970 年 1 月 1 日 00:00:00 UTC 以来的毫秒数。 这两个数字(378000000000379000000000)给出了不同的时区。

这在 Chrome devtool 控制台和 node.js 中都进行了测试,它们给出了相同的结果。遇到了这个post,但它似乎并不相关。

请提供任何线索/解释?

下面是快速sn-p和结果截图

console.log(new Date(378000000000).toString());
console.log(new Date(378000000000).toLocaleString());
console.log('-----------');
console.log(new Date(379000000000).toString());
console.log(new Date(379000000000).toLocaleString());

【问题讨论】:

  • 谷歌搜索“1982 年马来西亚时区变化”...en.wikipedia.org/wiki/Time_in_Malaysia - 您可以在“互联网”上找到惊人的信息:p
  • 好的!这很有意义,谢谢 Jaromanda!

标签: javascript node.js webkit


【解决方案1】:

您必须使用getTimezoneOffset() 方法。例如:

const melissaBirthdayParty = new Date();
let birthdayPartyTime = melissaBirthdayParty.getTimezoneOffset();
console.log("The party is at " + birthdayPartyTime)

【讨论】:

    【解决方案2】:

    感谢 Jaromanda X!了解了我自己国家的新历史。 参考https://en.wikipedia.org/wiki/Time_in_Malaysia

    【讨论】:

      猜你喜欢
      • 2022-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-02
      相关资源
      最近更新 更多