首页 > 解决方案 > Safari 对日期时间字符串的解释与 chrome 不同

问题描述

请参阅随附的屏幕截图。为什么会发生这种情况,最好的解决方案是什么?

两者的代码是:

var d = new Date("2018-03-30T00:00:00");
document.getElementById("demo").innerHTML = d;

铬行为

2018 年 3 月 30 日星期五 00:00:00 GMT-0700 (PDT)

Safari 行为

2018 年 3 月 29 日星期四 17:00:00 GMT-0700 (PDT)

标签: javascripttypescriptasp.net-core-webapi

解决方案


您的一个浏览器假设输入与另一个位于不同的时区。

尝试使用时区信息创建日期:

var d = new Date("2018-03-30T00:00:00.000Z");

或者,

var d = new Date("Fri, 30 Mar 2018 00:00:00 GMT");

推荐阅读