Performance: getEntriesByName() メソッド
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2015.
getEntriesByName()
メソッドは、現在パフォーマンスタイムラインにある、指定された名前と型の PerformanceEntry
オブジェクトの配列を返します。
特定の型のパフォーマンス項目だけに関心がある場合は、 getEntriesByType()
を参照してください。すべてのパフォーマンス項目の場合は、 getEntries()
を参照してください。
メモ:
このメソッドは新しいパフォーマンス項目を通知しません。このメソッドを呼び出した時点でパフォーマンスタイムラインに存在している項目のみを取得します。
利用できるようになった項目の通知を受け取るには、 PerformanceObserver
を使用してください。
以下の項目型はこのメソッドではまったく対応しておらず、これらの型の項目が存在したとしても返されません。
"element"
(PerformanceElementTiming
)"event"
(PerformanceEventTiming
)"largest-contentful-paint"
(LargestContentfulPaint
)"layout-shift"
(LayoutShift
)"longtask"
(PerformanceLongTaskTiming
)
これらの型の項目にアクセスするには、代わりに PerformanceObserver
を使用する必要があります。
構文
getEntriesByName(name)
getEntriesByName(name, type)
引数
name
-
取得する項目の名前です。
type
省略可-
"
mark
" など、取得する項目の型。有効な項目型の一覧はPerformanceEntry.entryType
にあります。
返値
指定された name
と type
を持つ PerformanceEntry
オブジェクトの配列 (Array
) です。
要素は項目の startTime
に基づいて時系列に並びます。指定された基準を満たすオブジェクトがない場合は、空のリストが返されます。
例
パフォーマンスマーカーをログ出力
次の例は、"debug-mark
" という名前のオブジェクト PerformanceMark
をすべてログ出力します。
const debugMarks = performance.getEntriesByName("debug-mark", "mark");
debugMarks.forEach((entry) => {
console.log(`${entry.name}'s startTime: ${entry.startTime}`);
});
仕様書
Specification |
---|
Performance Timeline # dom-performance-getentriesbyname |
ブラウザーの互換性
BCD tables only load in the browser