W3cubDocs

/Web APIs

PerformanceNavigationTiming: unloadEventEnd property

The unloadEventEnd read-only property returns a DOMHighResTimeStamp representing the time immediately after the current document's unload event handler completes.

Value

The unloadEventEnd property can have the following values:

  • A DOMHighResTimeStamp representing the time immediately after the current document's unload event handler completes.
  • 0 if there is no previous document.
  • 0 if the previous page was on another origin.

Examples

Measuring unload event handler time

The unloadEventEnd property can be used to measure how long it takes process theunload event handler.

This is useful to measure the time of long running unload event handlers.

js

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

Example using a PerformanceObserver, which notifies of new navigation performance entries as they are recorded in the browser's performance timeline. Use the buffered option to access entries from before the observer creation.

js

const observer = new PerformanceObserver((list) => {
  list.getEntries().forEach((entry) => {
    const unloadEventTime = entry.unloadEventEnd - entry.unloadEventStart;
    if (unloadEventTime > 0) {
      console.log(
        `${entry.name}: unload event handler time: ${unloadEventTime}ms`,
      );
    }
  });
});

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

Example using Performance.getEntriesByType(), which only shows navigation performance entries present in the browser's performance timeline at the time you call this method:

js

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

Specifications

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
unloadEventEnd 57 12 58 11 44 15 57 57 58 43 15.1 7.0

See also

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming/unloadEventEnd