2016-04-06 23 views
0

は、私は次のコードを持って、Date.prototype.getTime()でChromeとFirefoxの値が異なるのはなぜですか?

var x = new Date("2016-04-04T00:00:00").getTime(); 

    console.log(x); 

xの出力は、Chromeで1459728000000とFirefoxで1459753200000です。

しかし、FirefoxでのChromeの出力も欲しいです - 回避策はありますか?

+1

WebkitのデフォルトのTZは、FirefoxのためのUTCはないように思われます。もっと明示してください、Paulproの答えを見てください。 – Loenix

+0

@Loenix - 説明をありがとう。 –

答えて

2

Firefoxはタイムゾーンを指定しないとデフォルトでUTCに設定されますが、Firefoxではデフォルトでシステムのタイムゾーンが使用されます。あなたの時間にZを追加することにより、UTCを意味することを指定します。

var x = new Date("2016-04-04T00:00:00Z").getTime(); 
+0

あなたはそれを引用できますか? – chiliNUT

+1

@chiliNUTブラウザーの個々の実装に関する私の主張をバックアップするリファレンスはありませんが、私のマシン上でそれを再現することができ、[ECMAScript仕様は実装に任せています](http:// www.ecma-international.org/ecma-262/5.1/#sec-15.9.4.2)タイムゾーンが指定されていない場合: "文字列がそのフォーマットに準拠していない場合、関数は実装固有のヒューリスティックス実装固有の日付形式を使用することができます。 – Paulpro

+0

@Paulpro - ありがとう! –

関連する問題