performance.getEntriesByType()

getEntriesByType() 方法返回给定类型的 PerformanceEntry 列表

The list's members (entries) can be created by making performance marks or measures (for example by calling the mark() method) at explicit points in time.

备注: 此特性在 Web Worker 中可用

Syntax

entries = window.performance.getEntriesByType(type);

Arguments

type

The type of entry to retrieve such as "mark". The valid entry types are listed in PerformanceEntry.entryType.

Return value

entries

A list of PerformanceEntry objects that have the specified type. The items will be in chronological order based on the entries' startTime (en-US). If no objects have the specified type, or no argument is provided, an empty list is returned.

Example

function usePerformanceEntryMethods() {
  log("PerformanceEntry tests ...");

  if (performance.mark === undefined) {
    log("... performance.mark Not supported");
    return;
  }

  // Create some performance entries via the mark() method
  performance.mark("Begin");
  doWork(50000);
  performance.mark("End");
  performance.mark("Begin");
  doWork(100000);
  performance.mark("End");
  doWork(200000);
  performance.mark("End");

  // Use getEntries() to iterate through the each entry
  var p = performance.getEntries();
  for (var i=0; i < p.length; i++) {
    log("Entry[" + i + "]");
    checkPerformanceEntry(p[i]);
  }

  // Use getEntries(name, entryType) to get specific entries
  p = performance.getEntries({name : "Begin", entryType: "mark"});
  for (var i=0; i < p.length; i++) {
    log("Begin[" + i + "]");
    checkPerformanceEntry(p[i]);
  }

  // Use getEntriesByType() to get all "mark" entries
  p = performance.getEntriesByType("mark");
  for (var i=0; i < p.length; i++) {
    log ("Mark only entry[" + i + "]: name = " + p[i].name +
         "; startTime = " + p[i].startTime +
         "; duration  = " + p[i].duration);
  }

  // Use getEntriesByName() to get all "mark" entries named "Begin"
  p = performance.getEntriesByName("Begin", "mark");
  for (var i=0; i < p.length; i++) {
    log ("Mark and Begin entry[" + i + "]: name = " + p[i].name +
         "; startTime = " + p[i].startTime +
         "; duration  = " + p[i].duration);
  }
}

Specifications

Specification
Performance Timeline
# dom-performance-getentriesbytype

Browser compatibility

BCD tables only load in the browser