javascript - 如何解析JS日期在所有浏览器中保持一致

标签 javascript google-chrome firefox safari cross-browser

我正在解决一个问题一段时间,无法解决。

问题:

我有以下日期字符串:2015-08-25T08:00:00Z

我正在尝试将此字符串解析为JS日期:var date = new Date( date_string );

如果我记录此:
-Chrome:Tue Aug 25 2015 10:00:00 GMT+0200 (CEST)
-Safari:Tue Aug 25 2015 10:00:00 GMT+0200 (CEST)
-Firefox:Date 2015-08-25T08:00:00.000Z(为什么Firefox显示的时间不同于其他浏览器?)

但是我希望它们都显示我解析的日期。
另一件事是:我不希望字符串受时区影响。
结果在所有浏览器中都应该是带有字符串日期的日期。

还尝试使用moment.js进行解析,但即使这样也无法解决我的问题。

谢谢!!

最佳答案

我自己弄清楚了。

如果我记录此:

console.log( date.getHours() );


在所有浏览器中,输出都是相同的。

要删除时区内容,请执行以下操作:

var date = new Date( date_string );
date = new Date( date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate(), date.getUTCHours() );  


但是有人可以告诉我,为什么Firefox即使在同一个对象的情况下也显示其他内容,然后再显示其他浏览器?

关于javascript - 如何解析JS日期在所有浏览器中保持一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32526751/

相关文章:

html - 如何使translateX过渡到在Firefox中工作?

javascript - requestFullscreen 没有返回 promise

html - 如何使用 206 Partial Content 使浏览器请求范围更小

javascript - Firebase - IN 查询在 where 子句中不起作用,结果为空数组

javascript - 使用VBA遍历DIV元素

javascript - 未捕获的安全错误 : Failed to execute 'replaceState' on 'History' : cannot be created in a document with origin 'null'

apache-flex - 如何禁用 Chrome 中的自动 Flash Player 更新?

javascript - 如何在参数中单击按钮时获取包含对象的选定单选按钮值

javascript - Javascript:将参数传递给回调调用的方法

javascript - 为什么 html5-video 事件 timeupdate 在 Chrome 浏览器上触发两次?