Javascript chrome 67中的getTime不正确

Javascript chrome 67中的getTime不正确,javascript,google-chrome,timezone,Javascript,Google Chrome,Timezone,我已经把Chrome升级到67版 新日期1924,4,1,0,0,0,0.getTime 返回-1441245724000 必须-1441249200000 如果毫秒1000,秒60,分钟60==0 getTime必须在结尾至少给出5个零,只有一个解释:你在乌克兰 请允许我解释: 将单个组件传递给日期构造函数时,这些值基于运行代码的计算机的本地时区。请记住,月份是以零为基础的,新日期1924,4,1,0,0,0,0要求当地时间1924-05-01 00:00:00.000 .getTime要求以

我已经把Chrome升级到67版

新日期1924,4,1,0,0,0,0.getTime

返回-1441245724000

必须-1441249200000

如果毫秒1000,秒60,分钟60==0
getTime必须在结尾至少给出5个零,只有一个解释:你在乌克兰

请允许我解释:

将单个组件传递给日期构造函数时,这些值基于运行代码的计算机的本地时区。请记住,月份是以零为基础的,新日期1924,4,1,0,0,0,0要求当地时间1924-05-01 00:00:00.000

.getTime要求以毫秒为单位的Unix时间戳,该时间戳基于UTC-因此存在从本地时间到UTC的隐式转换。因此,任何运行此代码的人都会根据自己的时区得到不同的结果

时区是一项相对现代的发明。它们并不总是以我们今天使用它们的方式存在。大多数计算机保存的关于时区的数据来自于。在该数据中,对于大多数时区,最早的输入是基于太阳LMT的纬度和经度,该纬度和经度与用于识别时区的城市相关

在本例中,您的值-144124572400转换为1924-04-30 21:57:56 UTC。因为它是从当地时间午夜推导出来的,所以通过数学计算,当地时间与UTC的偏移量必须是+02:02:04

TZDB中LMT值为+02:02:04的唯一时区是欧洲/基辅。由于我不确定确切的原因,TZDB还指定缩写为KMT Kiev Mean Time,从1880年到1924年

至于为什么你会在新版本的Chrome上看到这一点,很可能旧版本没有考虑到整个TZDB,而是在过去的某个时候截断了它。事实上,ECMAScript 5.1标准过去只要求应用当前时区规则,就好像它一直有效一样。这在ECMAScript 6中被删除,大多数浏览器现在使用的是对提供的时间戳有效的正确规则


TL;1924年5月1日之前乌克兰的当地时间是由太阳决定的,而不是由政府决定的。至少-这是您的计算机所拥有的最为人所知的信息。

只有一种解释:您在乌克兰

请允许我解释:

将单个组件传递给日期构造函数时,这些值基于运行代码的计算机的本地时区。请记住,月份是以零为基础的,新日期1924,4,1,0,0,0,0要求当地时间1924-05-01 00:00:00.000

.getTime要求以毫秒为单位的Unix时间戳,该时间戳基于UTC-因此存在从本地时间到UTC的隐式转换。因此,任何运行此代码的人都会根据自己的时区得到不同的结果

时区是一项相对现代的发明。它们并不总是以我们今天使用它们的方式存在。大多数计算机保存的关于时区的数据来自于。在该数据中,对于大多数时区,最早的输入是基于太阳LMT的纬度和经度,该纬度和经度与用于识别时区的城市相关

在本例中,您的值-144124572400转换为1924-04-30 21:57:56 UTC。因为它是从当地时间午夜推导出来的,所以通过数学计算,当地时间与UTC的偏移量必须是+02:02:04

TZDB中LMT值为+02:02:04的唯一时区是欧洲/基辅。由于我不确定确切的原因,TZDB还指定缩写为KMT Kiev Mean Time,从1880年到1924年

至于为什么你会在新版本的Chrome上看到这一点,很可能旧版本没有考虑到整个TZDB,而是在过去的某个时候截断了它。事实上,ECMAScript 5.1标准过去只要求应用当前时区规则,就好像它一直有效一样。这在ECMAScript 6中被删除,大多数浏览器现在使用的是对提供的时间戳有效的正确规则


TL;1924年5月1日之前乌克兰的当地时间是由太阳决定的,而不是由政府决定的。至少-这是您的计算机所拥有的最为人所知的信息。

虽然我可以确认这种行为,但它看起来更像是一个bug,我可以肯定您的实际问题是什么。您能否解释一下为什么您期望一个结果而不是另一个?虽然我可以确认这种行为,它看起来更像一个bug,我知道你真正的问题是什么。你能解释一下为什么你期望一个结果而不是另一个吗?