Javascript 新的 Date() 在 Firefox 中改变了?

Javascript new Date() changed in firefox?

所以我想知道 javascript 函数 Date() 最近是否针对 Firefox 甚至其他浏览器进行了更改。

起初我会得到这样的日期输出:Mon Apr 13 2015 22:18:08 GMT+0200 (West-Europa (zomertijd))

但现在它输出的是这样的:2015-04-13T20:15:18.322Z

我有一个依赖于第一种格式的脚本,所以它崩溃了,而我的代码没有任何改变。这就是我开始调查并发现问题所在的原因。

我想知道这是怎么回事。 (我不是要格式化解决方案,只是想知道为什么要这样格式化)

更新 1:我认为添加我测试过的浏览器的版本号可能会有用(结果相同)。

更新 2:代码示例:

new Date();
-- output -- Date 2015-04-13T20:57:39.622Z

原来这是 UTCZulu time 格式。所以现在的问题是:为什么它输出一个 UTC 日期,而它以前没有这样做。

new Date() returns 一个日期对象。 Firefox 中的控制台可以帮助您作为开发人员进行调试,而 Mozilla 可能已经更改了控制台中对象的表示。也许他们首先只显示对象所代表的日期,现在他们显示了您可以探索的对象的表示(有一个三角形 ▶,您可以单击它来展开表示并显示对象的更多属性)。

对于您的程序的行为应该无关紧要。当你在页面上输出一个日期时,你不会直接打印这个对象,而是将它转换成一个字符串,比如你在new Date().toString()的情况下得到的。这种行为不太可能无缘无故地改变。