2013-11-27 11 views
7

Dateオブジェクトをミリ秒単位で現在の時刻を取得するためのさまざまな方法があります。最速・最軽量の方法は、JSのDateオブジェクトとミリ秒単位で現在の時刻を取得し

(new Date()).getTime(); 
+new Date(); 
Date.now(); 

あなたが作成する必要がないと仮定するとは、ミリ秒単位で現在の時間が必要ですが、どれが最も効果的でしょうか?パフォーマンス面で

編集:ほとんどの開発者はこれに気にしないと思っていますが、ローテクな組み込み環境で作業しているときや好奇心を殺すときに問題になることがあります。

+5

あなたはどうしたらいいですか?(http://jsperf.com) –

+7

この問題は、マイクロ最適化が退屈であるため、話題にならないようです。 – Phil

+1

私は 'Date.now();'おそらくそれは新しいDataオブジェクトインスタンスを作成しません。 – techfoobar

答えて

10

Date.now()が優勝しました。 jsperf.com test

しかし、上記のコメントに記載されているように、CPUコストは他の何かに比べて面白くない可能性があります。

@techfoobarには、Dateオブジェクトの割り当てにかかるコストが記述されています(実際にはこれらのDateオブジェクトのガベージコレクションのコストはです)。これは、Date.now()がおそらく高価なNumberオブジェクトを割り当てているため、重要な勝利である場合とそうでない場合があります。

関連する問題