PerformanceObserverEntryList: getEntries() 方法

getEntries() 方法是 PerformanceObserverEntryList 接口的方法,它返回一个显式观察到的 性能条目 对象列表。列表的成员由调用 observe() 方法时指定的 条目类型 集合确定。该列表在观察者的回调函数中可用(作为回调函数中的第一个参数)。

语法

js
getEntries()

返回值

一个显式观察到的 PerformanceEntry 对象列表。项目将按条目的 startTime 按时间顺序排列。如果未找到对象,则返回一个空列表。

示例

使用 getEntries、getEntriesByName 和 getEntriesByType

以下示例展示了 getEntries()getEntriesByName()getEntriesByType() 方法之间的区别。

js
const observer = new PerformanceObserver((list, obs) => {
  // Log all entries
  let perfEntries = list.getEntries();
  perfEntries.forEach((entry) => {
    console.log(`${entry.name}'s duration: ${entry.duration}`);
  });

  // Log entries named "debugging" with type "measure"
  perfEntries = list.getEntriesByName("debugging", "measure");
  perfEntries.forEach((entry) => {
    console.log(`${entry.name}'s duration: ${entry.duration}`);
  });

  // Log entries with type "mark"
  perfEntries = list.getEntriesByType("mark");
  perfEntries.forEach((entry) => {
    console.log(`${entry.name}'s startTime: ${entry.startTime}`);
  });
});

// Subscribe to various performance event types
observer.observe({
  entryTypes: ["mark", "measure", "navigation", "resource"],
});

规范

规范
Performance Timeline
# dom-performanceobserverentrylist-getentries

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。