Performance: 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 gibt ein Array von PerformanceEntry
-Objekten zurück, die sich derzeit in der Performance-Zeitleiste mit dem angegebenen Namen und Typ befinden.
Wenn Sie an Performance-Einträgen bestimmter Typen interessiert sind, sehen Sie sich getEntriesByType()
an. Für alle Performance-Einträge siehe getEntries()
.
Hinweis: Diese Methode benachrichtigt Sie nicht über neue Performance-Einträge; Sie erhalten nur Einträge, die zum Zeitpunkt des Aufrufs dieser Methode in der Performance-Zeitleiste vorhanden sind.
Um Benachrichtigungen über Einträge zu erhalten, sobald sie verfügbar werden, verwenden Sie einen PerformanceObserver
.
Die folgenden Eintragstypen werden von dieser Methode überhaupt nicht unterstützt und werden nicht zurückgegeben, selbst wenn möglicherweise Einträge für diese Typen existieren:
"element"
(PerformanceElementTiming
)"event"
(PerformanceEventTiming
)"largest-contentful-paint"
(LargestContentfulPaint
)"layout-shift"
(LayoutShift
)"longtask"
(PerformanceLongTaskTiming
)
Um auf Einträge dieser Typen zuzugreifen, müssen Sie stattdessen einen PerformanceObserver
verwenden.
Syntax
getEntriesByName(name)
getEntriesByName(name, type)
Parameter
name
-
Der Name der abzurufenden Einträge.
type
Optional-
Der Typ der abzurufenden Einträge, wie z. B.
"mark"
. Die gültigen Eintragstypen sind inPerformanceEntry.entryType
aufgelistet.
Rückgabewert
Ein Array
von PerformanceEntry
-Objekten, die den angegebenen name
und type
haben.
Die Elemente werden in chronologischer Reihenfolge basierend auf den startTime
der Einträge angeordnet sein. Wenn keine Objekte den
angegebenen Kriterien entsprechen, wird ein leeres Array zurückgegeben.
Beispiele
Protokollierung von Performance-Markern
Das folgende Beispiel protokolliert alle PerformanceMark
-Objekte, die den Namen "debug-mark"
haben.
const debugMarks = performance.getEntriesByName("debug-mark", "mark");
debugMarks.forEach((entry) => {
console.log(`${entry.name}'s startTime: ${entry.startTime}`);
});
Spezifikationen
Specification |
---|
Performance Timeline # dom-performance-getentriesbyname |
Browser-Kompatibilität
BCD tables only load in the browser