调用new Date(String s)会产生不同时区的结果



我试图在javascript中显示日期。我从后端收到这样的日期:2020-09-22T17:10:25Z(来自和Java中的即时对象)。

当我尝试呼叫new Date("2020-09-22T17:10:25Z")时,我得到:Tue Sep 22 2020 20:10:25 GMT+0300 (Eastern European Summer Time)。这个问题是,我不是在GMT+0300时区,而是GMT+0200

当我尝试调用new Date()时,另一方面,我得到Thu Dec 08 2022 20:34:11 GMT+0200 (Eastern European Standard Time),这是我正确的时区。

我的问题是,为什么在第一种情况下我得到GMT+0300,在第二种情况下我得到GMT+0200?我试图解析的字符串中的Z代表Zuluzero hour offset,那么为什么这2种不同的方法使用不同的时区?

看起来你在冬天是在GMT+2,但是在夏天(九月)你是在夏天,也就是GMT+3

javascript的date()函数工作于本地计算机上设置的时间之外。如果它给出GMT+3,那么您的计算机设置为GMT+3。检查你的系统时钟配置

窗口:https://kb.wisc.edu/helpdesk/page.php?id=79027

mac: https://support.apple.com/en-ca/guide/mac-help/mchlp2996/mac

linux: https://www.makeuseof.com/how-to-set-date-and-time-linux/

相关内容

  • 没有找到相关文章

最新更新