--- title: performance.measure() slug: Web/API/Performance/measure tags: - API - Web Workers - Web パフォーマンス - メソッド - リファレンス translation_of: Web/API/Performance/measure ---
measure() メソッドは、マーク間、ナビゲーション開始時刻、または現在時刻の間に、ブラウザのパフォーマンスエントリバッファに名前付き {{domxref("DOMHighResTimeStamp","timestamp")}} を作成します。2つのマーク間を測定するときは、それぞれ開始マークと終了マークがあります。名前付きタイムスタンプは、メジャーと呼ばれます。
measure は、{{domxref("Performance")}} インターフェイスの1つで取得できます。({{domxref("Performance.getEntries","getEntries()")}}、{{domxref("Performance.getEntriesByName","getEntriesByName()")}}または{{domxref("Performance.getEntriesByType","getEntriesByType()")}})
measure の {{domxref("PerformanceEntry","performance entry")}} は、次のプロパティ値を持ちます。
measure" に設定しますname" に設定します{{AvailableInWorkers}}
performance.measure(name); performance.measure(name, startMark); performance.measure(name, startMark, endMark); performance.measure(name, undefined, endMark);
次の例は、ブラウザのパフォーマンスエントリバッファに measure() を使用して新しいメジャー{{domxref("PerformanceEntry","パフォーマンスエントリ")}}を作成する方法を示しています。
const markerNameA = "example-marker-a"
const markerNameB = "example-marker-b"
// いくつかのネストしたタイムアウトを実行し、それぞれに対して PerformanceMark を作成します。
performance.mark(markerNameA);
setTimeout(function() {
performance.mark(markerNameB);
setTimeout(function() {
// さまざまな測定値を作成します。
performance.measure("measure a to b", markerNameA, markerNameB);
performance.measure("measure a to now", markerNameA);
performance.measure("measure from navigation start to b", undefined, markerNameB);
performance.measure("measure from the start of navigation to now");
// すべての測定値を引き出します。
console.log(performance.getEntriesByType("measure"));
// 最後に、エントリを整理します。
performance.clearMarks();
performance.clearMeasures();
}, 1000);
}, 1000);
| 仕様書 | ステータス | コメント |
|---|---|---|
| {{SpecName('User Timing Level 2', '#dom-performance-measure', 'measure()')}} | {{Spec2('User Timing Level 2')}} | measure() 処理モデルを明確にします。 |
| {{SpecName('User Timing', '#dom-performance-measure', 'measure()')}} | {{Spec2('User Timing')}} | 基本的な定義 |
{{Compat("api.Performance.measure")}}