Performance

The Performance interface provides access to performance-related information for the current page. It's part of the High Resolution Time API, but is enhanced by the Performance Timeline API (en-US), the Navigation Timing API (en-US), the User Timing API (en-US), and the Resource Timing API (en-US).

An object of this type can be obtained by calling the Window.performance (en-US) read-only attribute.

備註: This interface and its members are available in Web Workers, except where indicated below. Also note that performance markers and measures are per context. If you create a mark on the main thread (or other worker), you cannot see it in a worker thread, and vice versa.

Properties

The Performance interface doesn't inherit any properties.

已棄用 Performance.navigation (en-US) Read only

A PerformanceNavigation (en-US) object that provides useful context about the operations included in the times listed in timing, including whether the page was a load or a refresh, how many redirections occurred, and so forth.

已棄用 Performance.timing Read only

A PerformanceTiming (en-US) object containing latency-related performance information. Not available in workers.

performance.memory (en-US) 非標準

A non-standard extension added in Chrome, this property provides an object with basic memory usage information. You should not use this non-standard API.

Performance.timeOrigin (en-US) Read only 非標準

Returns the high resolution timestamp of the start time of the performance measurement.

Event handlers

Performance.onresourcetimingbufferfull (en-US)

An EventTarget which is a callback that will be called when the resourcetimingbufferfull event is fired.

Methods

The Performance interface doesn't inherit any methods.

Performance.clearMarks() (en-US)

Removes the given mark from the browser's performance entry buffer.

Performance.clearMeasures() (en-US)

Removes the given measure from the browser's performance entry buffer.

Performance.clearResourceTimings() (en-US)

Removes all performance entries (en-US) with a entryType (en-US) of "resource" from the browser's performance data buffer.

Performance.getEntries() (en-US)

Returns a list of PerformanceEntry (en-US) objects based on the given filter.

Performance.getEntriesByName() (en-US)

Returns a list of PerformanceEntry (en-US) objects based on the given name and entry type.

Performance.getEntriesByType() (en-US)

Returns a list of PerformanceEntry (en-US) objects of the given entry type.

Performance.mark() (en-US)

Creates a timestamp (en-US) in the browser's performance entry buffer with the given name.

Performance.measure() (en-US)

Creates a named timestamp (en-US) in the browser's performance entry buffer between two specified marks (known as the start mark and end mark, respectively).

Performance.now() (en-US)

Returns a DOMHighResTimeStamp (en-US) representing the number of milliseconds elapsed since a reference instant.

Performance.setResourceTimingBufferSize() (en-US)

Sets the browser's resource timing buffer size to the specified number of "resource" type (en-US) performance entry (en-US) objects.

Performance.toJSON() (en-US)

Is a jsonizer returning a json object representing the Performance object.

Specifications

Specification
High Resolution Time
# sec-performance
Performance Timeline
# extensions-to-the-performance-interface
Resource Timing
# sec-extensions-performance-interface
User Timing
# extensions-performance-interface

Browser compatibility

BCD tables only load in the browser