Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

PerformanceScriptTiming

Eingeschränkt verfügbar

Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.

Want more browser support for this feature? Tell us why.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Das PerformanceScriptTiming-Interface ist in der Long Animation Frames API definiert und liefert Messwerte für einzelne Skripte, die zu langen Animationsframes (LoAFs) beitragen.

PerformanceScriptTiming erbt von PerformanceEntry.

PerformanceEntry PerformanceScriptTiming

Instanzeigenschaften

Dieses Interface erweitert die folgenden Eigenschaften von PerformanceEntry für Performance-Einträge langer Animationsframes:

PerformanceEntry.duration Schreibgeschützt

Gibt einen DOMHighResTimeStamp zurück, der die verstrichene Zeit zwischen Beginn und Ende der Skriptausführung in Millisekunden angibt.

PerformanceEntry.entryType Schreibgeschützt

Gibt den Typ des Eintrags zurück, der immer "script" ist.

PerformanceEntry.name Schreibgeschützt

Gibt den Namen des Eintrags zurück, der immer "script" ist.

PerformanceEntry.startTime Schreibgeschützt

Gibt einen DOMHighResTimeStamp zurück, der den Zeitpunkt angibt, zu dem die Skriptausführung begann, in Millisekunden.

Dieses Interface unterstützt außerdem die folgenden Eigenschaften:

PerformanceScriptTiming.executionStart Schreibgeschützt

Gibt einen DOMHighResTimeStamp zurück, der den Zeitpunkt angibt, zu dem die Kompilierung des Skripts abgeschlossen war und seine Ausführung begann.

PerformanceScriptTiming.forcedStyleAndLayoutDuration Schreibgeschützt

Gibt einen DOMHighResTimeStamp zurück, der die Gesamtzeit in Millisekunden angibt, die das Skript für erzwungene Layout- und Stilberechnungen aufgewendet hat. Unter Layout-Thrashing vermeiden erfahren Sie, wodurch dies verursacht wird.

PerformanceScriptTiming.invoker Schreibgeschützt

Gibt eine Zeichenfolge zurück, die die Funktion identifiziert, deren Aufruf das Skript ausgeführt hat.

PerformanceScriptTiming.invokerType Schreibgeschützt

Gibt eine Zeichenfolge zurück, die den Typ der Funktion angibt, deren Aufruf das Skript ausgeführt hat.

PerformanceScriptTiming.pauseDuration Schreibgeschützt

Gibt einen DOMHighResTimeStamp zurück, der die Gesamtzeit in Millisekunden angibt, die das Skript mit „pausierenden“ synchronen Operationen verbracht hat (beispielsweise Aufrufen von Window.alert() oder synchronen XMLHttpRequest-Anfragen).

PerformanceScriptTiming.sourceCharPosition Schreibgeschützt

Gibt eine Zahl zurück, die die Zeichenposition der Skriptfunktion angibt, die zum LoAF beigetragen hat.

PerformanceScriptTiming.sourceFunctionName Schreibgeschützt

Gibt eine Zeichenfolge mit dem Namen der Funktion zurück, die zum LoAF beigetragen hat.

PerformanceScriptTiming.sourceURL Schreibgeschützt

Gibt eine Zeichenfolge mit der URL des Skripts zurück.

PerformanceScriptTiming.window Schreibgeschützt

Gibt eine Referenz auf ein Window-Objekt zurück, das das window des Containers repräsentiert, in dem das LoAF verursachende Skript ausgeführt wurde (also entweder das oberste Dokument oder ein <iframe>).

PerformanceScriptTiming.windowAttribution Schreibgeschützt

Gibt einen Aufzählungswert zurück, der die Beziehung des Containers, in dem das LoAF verursachende Skript ausgeführt wurde (also entweder das oberste Dokument oder ein <iframe>), zum Fenster beschreibt, in dem das aktuelle Dokument ausgeführt wird.

Instanzmethoden

PerformanceScriptTiming.toJSON()

Gibt ein JSON-serialisierbares einfaches Objekt zurück, das das PerformanceScriptTiming-Objekt repräsentiert. Die Methode wird von JSON.stringify() automatisch aufgerufen.

Beschreibung

Lange Animationsframes (LoAFs) sind Rendering-Aktualisierungen, die um mehr als 50 ms verzögert werden. LoAFs können zu langsamen Aktualisierungen der Benutzeroberfläche (UI) führen. Dadurch können Bedienelemente nicht reagieren und Animationen sowie Bildlaufbewegungen ruckeln. Das frustriert Benutzer häufig.

Das PerformanceScriptTiming-Interface (auf dessen Instanzen über die Eigenschaft PerformanceLongAnimationFrameTiming.scripts zugegriffen wird) liefert die folgenden detaillierten Informationen zu einzelnen Skripten, die zu LoAFs beitragen. Damit können Entwickler deren Ursachen eingrenzen:

  • Detaillierte Zeitstempel für jedes Skript.
  • Identität und Typ des Auslösers, also der Funktion, deren Aufruf das Skript ausgeführt hat.
  • Detaillierte Informationen zur Quelldatei jedes Skripts, einschließlich der URL sowie des Funktionsnamens und der Zeichenposition, die zum LoAF beigetragen haben.

Beispiele

Beispiele zur Long Animation Frames API finden Sie unter Zeitmessung langer Animationsframes.

Spezifikationen

Spezifikation
Long Animation Frames API
# sec-PerformanceScriptTiming

Browser-Kompatibilität

Siehe auch