PerformanceObserverEntryList: 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()
は PerformanceObserverEntryList
インターフェイスのメソッドで、指定された名前 (name
) と項目型 (entryType
) について、明示的に監視された PerformanceEntry
オブジェクトのリストを返します。リストのメンバーは、observe()
メソッドを呼び出す際に指定された項目型の集合によって決定されます。 このリストは、オブザーバーのコールバック関数(コールバックの最初の引数)で利用できます。
構文
js
getEntriesByName(name)
getEntriesByName(name, type)
引数
name
-
取得する項目名を表す文字列。
type
省略可-
取得する項目の型を表す文字列。例えば
"mark"
などです。有効な項目型は、PerformanceEntry.entryType
に掲載されています。
返値
例
getEntries, getEntriesByName, getEntriesByType の扱い
次の例は、getEntries()
、getEntriesByName()
、getEntriesByType()
の各メソッドの違いを示しています。
js
const observer = new PerformanceObserver((list, obs) => {
// すべての項目をログ出力
let perfEntries = list.getEntries();
perfEntries.forEach((entry) => {
console.log(`${entry.name} の時間: ${entry.duration}`);
});
// "debugging" という名前の "measure" 型の項目をログ出力
perfEntries = list.getEntriesByName("debugging", "measure");
perfEntries.forEach((entry) => {
console.log(`${entry.name} の時間: ${entry.duration}`);
});
// "mark" 型の項目をログ出力
perfEntries = list.getEntriesByType("mark");
perfEntries.forEach((entry) => {
console.log(`${entry.name} の開始時刻: ${entry.startTime}`);
});
});
// さまざまなパフォーマンスイベント型を監視
observer.observe({
entryTypes: ["mark", "measure", "navigation", "resource"],
});
仕様書
Specification |
---|
Performance Timeline # dom-performanceobserverentrylist-getentriesbyname |
ブラウザーの互換性
BCD tables only load in the browser