You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Chrome中new Date()返回错误时区?GMT+0805异常原因咨询

为什么Chrome 68.0.3440.7处理1899年日期时出现GMT+0805时区异常?

这其实是Chrome旧版本处理历史时区偏移时的一个bug,背后跟中国时区的历史变更直接相关。

核心原因拆解:

  • 中国在1902年之前,官方使用的是北京地方时,对应的UTC偏移量是GMT+8:05:43(显示时简化为+0805);1902年之后才统一切换到GMT+8的标准时区(也就是现在的中国标准时间)。
  • Chrome 68.0.3440.7这个旧版本的时区数据库,没有正确区分1900年前后的时区偏移规则,导致对1899年的日期错误应用了更早的北京地方时偏移。而其他浏览器(或Chrome的后续版本)的时区数据库已经修正了这个历史时区的处理逻辑,所以能返回正确的GMT+0800。

快速验证测试:

你可以在同版本Chrome里执行这段代码试试:

new Date(1902, 1, 10)

应该会返回Mon Feb 10 1902 00:00:00 GMT+0800 (中国标准时间)——因为1902年之后已经启用了标准时区,这时候Chrome的处理是正常的。

解决办法:

升级你的Chrome到较新版本即可,后续Chrome更新了时区数据,已经修复了这个历史日期的时区偏移bug。

内容的提问来源于stack exchange,提问作者Gavin Yang

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:55:59