PerformanceObserverEntryList: getEntriesByName()-Methode
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.
Hinweis: Dieses Feature ist verfügbar in Web Workers.
Die getEntriesByName()
-Methode der PerformanceObserverEntryList
-Schnittstelle gibt eine Liste von explizit beobachteten PerformanceEntry
-Objekten für einen gegebenen name
und entryType
zurück. Die Mitglieder der Liste werden durch die im Aufruf der observe()
-Methode angegebenen Entry Types bestimmt. Die Liste ist in der Callback-Funktion des Observers verfügbar (als erstes Parameter im Callback).
Syntax
getEntriesByName(name)
getEntriesByName(name, type)
Parameter
name
-
Ein String, der den Namen des Eintrags darstellt, der abgerufen werden soll.
type
Optional-
Ein String, der den Typ des Eintrags darstellt, der abgerufen werden soll, wie z.B.
"mark"
. Die gültigen Entry Types sind inPerformanceEntry.entryType
aufgeführt.
Rückgabewert
Eine Liste von explizit beobachteten Performance-Entry-Objekten, die den angegebenen name
und type
haben. Wenn das type
-Argument nicht angegeben wird, wird nur der name
verwendet, um die zurückzugebenden Einträge zu bestimmen. Die Einträge sind in chronologischer Reihenfolge basierend auf der startTime
der Einträge. Wenn keine Objekte die angegebenen Kriterien erfüllen, wird eine leere Liste zurückgegeben.
Beispiele
Arbeiten mit getEntries, getEntriesByName und getEntriesByType
Das folgende Beispiel zeigt den Unterschied zwischen den Methoden getEntries()
, getEntriesByName()
und getEntriesByType()
.
const observer = new PerformanceObserver((list, obs) => {
// Log all entries
let perfEntries = list.getEntries();
perfEntries.forEach((entry) => {
console.log(`${entry.name}'s duration: ${entry.duration}`);
});
// Log entries named "debugging" with type "measure"
perfEntries = list.getEntriesByName("debugging", "measure");
perfEntries.forEach((entry) => {
console.log(`${entry.name}'s duration: ${entry.duration}`);
});
// Log entries with type "mark"
perfEntries = list.getEntriesByType("mark");
perfEntries.forEach((entry) => {
console.log(`${entry.name}'s startTime: ${entry.startTime}`);
});
});
// Subscribe to various performance event types
observer.observe({
entryTypes: ["mark", "measure", "navigation", "resource"],
});
Spezifikationen
Specification |
---|
Performance Timeline # dom-performanceobserverentrylist-getentriesbyname |
Browser-Kompatibilität
BCD tables only load in the browser