首页 > web前端 > js教程 > 为什么 Chrome 和 Firefox 之间的日期字符串转换不同?

为什么 Chrome 和 Firefox 之间的日期字符串转换不同?

Barbara Streisand
发布: 2024-10-29 10:47:29
原创
1049 人浏览过

Why Does Date String Conversion Differ Between Chrome and Firefox?

Chrome 和 Firefox 之间的日期字符串转换差异

当尝试使用 new Date() 将日期字符串转换为 Date 对象时,用户Chrome 和 Firefox 之间可能会遇到不同的结果。这种差异源于两个浏览器如何解释表示 UTC(协调世界时)的日期字符串。

Firefox 与 Chrome 行为

在 Firefox 中,代码 var日期 = 新日期('2013-02-27T17:00:00');返回 2013 年 2 月 27 日星期三 17:00:00 GMT 0700(东南亚标准时间)。这是因为 Firefox 假定日期字符串为本地时间,并将其转换为浏览器的本地时区。

相反,Chrome 将日期字符串解释为 UTC 并返回 Thu Feb 28 2013 00:00:00 GMT 0700 (东南亚标准时间)。这是因为日期字符串缺少表示 UTC 时间的字母“Z”。

纠正问题

为了确保两个浏览器返回正确的 UTC 日期,日期字符串的格式必须正确。 UTC 的正确格式是 YYYY-MM-DDTHH:MM:SSZ。在这种情况下,需要附加 '2013-02-27T17:00:00' 末尾缺少的“Z”。

通过将代码修改为 var date = new Date('2013-02 -27T17:00:00Z');,Chrome 和 Firefox 都会返回预期的 UTC 日期和时间,即 2013 年 2 月 28 日星期四 00:00:00 GMT 0700(东南亚标准时间)。

以上是为什么 Chrome 和 Firefox 之间的日期字符串转换不同?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板