MDN wants to learn about developers like you: https://qsurvey.mozilla.com/s3/MDN-dev-survey

この翻訳は不完全です。英語から この記事を翻訳 してください。


この performance.now() メソッドは、ミリ秒単位で計測された、5マイクロ秒の精度の DOMHighResTimeStamp を返します。

返却される値は、起点の時刻(PerformanceTiming.navigationStartプロパティ)からの経過時間を表しています。ウェブワーカーでは、この起点時間は実行コンテキスト(例えばスレッドやプロセス)が生成された時刻となります。Window(UIスレッド、メインスレッド)では、これはユーザーが現在のドキュメントへナビゲート(確認が必要であった場合はナビゲーションを確認)した時刻です。以下の点に留意して下さい。:

  • Windowコンテキストから生成されたdedicated workerでは、この値は生成元の window における performance.now() の値よりも小さい値となるでしょう。従来はメインコンテキストの t0 と同じでしたが、これは変わりました。
  • shared worker または service worker では、この値はメインコンテキストでの値よりも大きくなるかもしれません。そのウィンドウは、それらワーカー以後に生成され得るためです。

構文

t = performance.now();

var t0 = performance.now();
doSomething();
var t1 = performance.now();
console.log("Call to doSomething took " + (t1 - t0) + " milliseconds.");

JavaScriptで利用できる他のタイミングデータ(例えば Date.now )とは違い、 Performance.now() が返すタイムスタンプは、1ミリ秒の分解能に制限されません。その代わりに、それらはマイクロ秒までの精度を持った浮動小数点の値を表しています。 

また、 Date.now() とは違い、 Performance.now() が返す値は、常に一定の割合で増加します。システムクロック(これはマニュアルで調整またはNTPのようなソフトウェアで変えられているかもしれない)とは独立しています。
他方で performance.timing.navigationStart + performance.now() は、おおよそ  Date.now() と同じになっているでしょう。

仕様

Specification Status Comment
High Resolution Time Level 2
performance.now() の定義
勧告候補 Stricter definitions of interfaces and types.
High Resolution Time
performance.now() の定義
勧告 Initial definition

ブラウザ互換性

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari
Basic support 20.0 webkit
24.0 [1]
(有) 15.0 (15.0) 10.0 15.0 8.0
on Web workers 33 ? 34.0 (34.0) ? ? ?
now() in a dedicated worker is now separate from the main context's now(). ? ? 45.0 (45.0) ? ? ?
Feature Android Android Webview Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile Chrome for Android
Basic support 4.0 25.0 (有) 15.0 (15.0) 10.0 未サポート 9 25.0
on Web workers ? (有) ? 34.0 (34.0) ? ? ? (有)
now() in a dedicated worker is now separate from the main context's now(). ? ? ? 45.0 (45.0) ? ? ? ?

[1] Windows の Chrome 20 から 33 のバージョンでは、performance.now() はミリ秒の精度の値を返します。

参考

ドキュメントのタグと貢献者

 このページの貢献者: takamin
 最終更新者: takamin,