--- title: PerformanceEntry slug: Web/API/PerformanceEntry tags: - API - PerformanceEntry - Web パフォーマンス - インターフェイス - パフォーマンスタイムライン API - リファレンス translation_of: Web/API/PerformanceEntry ---
PerformanceEntry
オブジェクトは、パフォーマンスタイムラインの一部である単一のパフォーマンスメトリックをカプセル化します。パフォーマンスエントリは、アプリケーション内の明示的な時点でパフォーマンス {{domxref("PerformanceMark","mark")}} または {{domxref("PerformanceMeasure","measure")}} を作成する (たとえば、{{domxref("Performance.mark","mark()")}} メソッドを呼び出すことによって) ことで直接作成できます。パフォーマンスエントリは、(イメージなどの) リソースのロードなどの間接的な方法でも作成されます。
PerformanceEntry
インスタンスは常に次のサブタイプのいずれかになります:
{{AvailableInWorkers}}
mark
" などのパフォーマンスメトリックの種類を表す {{domxref("DOMString")}}。有効な値についてはプロパティページを参照してください。PerformanceEntry
オブジェクトの JSON リプリゼンテーションを返します。次の例では、すべての PerformanceEntry
プロパティを調べて、ブラウザがそれらをサポートしているかどうかを確認し、サポートしている場合はそれらの値をコンソールに書き込みます。
function print_PerformanceEntries() { // getEntries() を使用してすべてのパフォーマンスエントリのリストを取得します。 var p = performance.getEntries(); for (var i=0; i < p.length; i++) { console.log("PerformanceEntry[" + i + "]"); print_PerformanceEntry(p[i]); } } function print_PerformanceEntry(perfEntry) { var properties = ["name", "entryType", "startTime", "duration"]; for (var i=0; i < properties.length; i++) { // それぞれのプロパティをチェックします。 var supported = properties[i] in perfEntry; if (supported) { var value = perfEntry[properties[i]]; console.log("... " + properties[i] + " = " + value); } else { console.log("... " + properties[i] + " is NOT supported"); } } }
仕様書 | ステータス | コメント |
---|---|---|
{{SpecName('Resource Timing 3')}} | {{Spec2('Resource Timing 3')}} | |
{{SpecName('Resource Timing 2')}} | {{Spec2('Resource Timing 2')}} | |
{{SpecName('Resource Timing')}} | {{Spec2('Resource Timing')}} | {{domxref("PerformanceResourceTiming")}} インターフェイスと entryType の resource 値を追加します。 |
{{SpecName('Navigation Timing Level 2')}} | {{Spec2('Navigation Timing Level 2')}} | |
{{SpecName('Navigation Timing')}} | {{Spec2('Navigation Timing')}} | {{domxref("PerformanceNavigationTiming")}} インターフェイスと entryType の navigation 値を追加します。 |
{{SpecName('User Timing Level 2')}} | {{Spec2('User Timing Level 2')}} | |
{{SpecName('User Timing')}} | {{Spec2('User Timing')}} | entryType の mark および measure の値と同様に、{{domxref("PerformanceMark")}} および {{domxref("PerformanceMeasure")}} インターフェイスを追加します。 |
{{SpecName('Frame Timing')}} | {{Spec2('Frame Timing')}} | {{domxref('PerformanceFrameTiming')}} インターフェイスと entryType の frame 値を追加します。 |
{{SpecName('Performance Timeline Level 2', '#dom-performanceentry', 'PerformanceEntry')}} | {{Spec2('Performance Timeline Level 2')}} | toJSON() シリアライザメソッドを追加しました。 |
{{SpecName('Performance Timeline', '#dom-performanceentry', 'PerformanceEntry')}} | {{Spec2('Performance Timeline')}} | 初期定義 |
{{Compat("api.PerformanceEntry")}}