PerformanceNavigationTiming: loadEventEnd-Eigenschaft

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since October 2021.

Die loadEventEnd-Eigenschaft gibt ein schreibgeschütztes DOMHighResTimeStamp zurück, das die Zeit unmittelbar nach dem Abschluss des load-Ereignis-Handlers des aktuellen Dokuments darstellt.

Wert

Ein DOMHighResTimeStamp, das die Zeit unmittelbar nach dem Abschluss des load-Ereignis-Handlers des aktuellen Dokuments darstellt.

Beispiele

Messung der Zeit des load-Ereignis-Handlers

Die loadEventEnd-Eigenschaft kann verwendet werden, um zu messen, wie lange es dauert, den load-Ereignis-Handler zu verarbeiten.

Dies ist nützlich, um die Zeit von langen load-Ereignis-Handlern zu messen.

js
window.addEventListener("load", (event) => {
  // Some long running code
});

Beispiel mit einem PerformanceObserver, der über neue navigation-Performance-Einträge informiert, sobald sie in der Leistungszeitachse des Browsers aufgezeichnet werden. Verwenden Sie die buffered-Option, um auf Einträge vor der Erstellung des Observers zuzugreifen.

js
const observer = new PerformanceObserver((list) => {
  list.getEntries().forEach((entry) => {
    const loadEventTime = entry.loadEventEnd - entry.loadEventStart;
    if (loadEventTime > 0) {
      console.log(`${entry.name}: load event handler time: ${loadEventTime}ms`);
    }
  });
});

observer.observe({ type: "navigation", buffered: true });

Beispiel mit Performance.getEntriesByType(), das nur navigation-Performance-Einträge anzeigt, die zum Zeitpunkt des Aufrufs dieser Methode in der Leistungszeitachse des Browsers vorhanden sind:

js
const entries = performance.getEntriesByType("navigation");
entries.forEach((entry) => {
  const loadEventTime = entry.loadEventEnd - entry.loadEventStart;
  if (loadEventTime > 0) {
    console.log(`${entry.name}:
      load event handler time: ${loadEventTime}ms`);
  }
});

Spezifikationen

Specification
Navigation Timing Level 2
# dom-performancenavigationtiming-loadeventend

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch