The getEntries() method of the PerformanceObserverEntryList interface returns a list of explicitly observed performance entry objects for a given filter. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback).

This method is exposed to Window and Worker interfaces.


General syntax:

entries = list.getEntries();
entries = list.getEntries(PerformanceEntryFilterOptions);

Specific usage:

entries = list.getEntries({name: "entry_name", entryType: "mark"});


Is a PerformanceEntryFilterOptions dictionary, having the following fields: This parameter is currently not supported on Chrome or Opera.

Return value

A list of explicitly observed PerformanceEntry objects that meets the criteria of the filter. The items will be in chronological order based on the entries' startTime. If no objects that meet the filter are found, an empty list is returned. If no argument is given, all entries are returned.


function print_perf_entry(pe) {
  console.log("name: "        +      +
              "; entryType: " + pe.entryType +
              "; startTime: " + pe.startTime +
              "; duration: "  + pe.duration);

// Create observer for all performance event types
var observe_all = new PerformanceObserver(function(list, obs) {
  var perfEntries;

  // Print all entries
  perfEntries = list.getEntries();
  for (var i=0; i < perfEntries.length; i++) {

  // Print entries named "Begin" with type "mark"
  perfEntries = list.getEntriesByName("Begin", "mark");
  for (var i=0; i < perfEntries.length; i++) {

  // Print entries with type "mark"
  perfEntries = list.getEntriesByType("mark");
  for (var i=0; i < perfEntries.length; i++) {
// subscribe to all performance event types
observe_all.observe({entryTypes: ['frame', 'mark', 'measure', 'navigation', 'resource', 'server']});

var observe_frame = new PerformanceObserver(function(list, obs) {
  var perfEntries = list.getEntries();
  // Should only have 'frame' entries
  for (var i=0; i < perfEntries.length; i++) {
// subscribe to frame event only
observe_frame.observe({entryTypes: ['frame']});


Specification Status Comment
Performance Timeline Level 2
The definition of 'getEntries()' in that specification.
Candidate Recommendation Initial definition.

Browser compatibility

Update compatibility data on GitHub
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
Basic supportChrome Full support 52Edge ? Firefox Full support 57IE No support NoOpera Full support 39Safari No support NoWebView Android No support NoChrome Android Full support 52Edge Mobile ? Firefox Android Full support 57Opera Android Full support 39Safari iOS No support NoSamsung Internet Android ?


Full support  
Full support
No support  
No support
Compatibility unknown  
Compatibility unknown

Document Tags and Contributors

Last updated by: sideshowbarker,