所以我用它来尝试获得前一天的时间。这在 Chrome 中运行良好,但 IE 认为是前一天。我当前的系统日期是 09/05/2014 10:14 (PST)。
var todaysDate = new Date();
var maxDate = new Date(Date.UTC(todaysDate.getFullYear(),todaysDate.getMonth(),todaysDate.getDate()-1));
值得一提的是,对于以下内容,IE 和 Chrome 都返回值 9。
console.log(todaysDate.getDate());
所以如果今天 = 2014 年 9 月 5 日(太平洋标准时间)
Chrome 获取 08/05/2014
IE 获取 07/05/2014
这是怎么回事?为什么 IE 对此的解释与 Chrome 不同?
最佳答案
这是一个时区问题 - GMT 之后的时区将被您的代码推迟一天。
尝试将“小时”设置为 12
。这将确保所有时区都在同一天。
显然 UTC+14 是一回事。请尝试使用 todaysDate.getUTC*
方法,并确保包括小时/分钟/秒。
关于javascript - 为什么计算的日期在 Internet Explorer 和 Chrome 中不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23568078/