Performance.getEntries()

这篇翻译不完整。请帮忙从英语翻译这篇文章

getEntries() 对于给定的filter,此方法返回 PerformanceEntry 对象数组. 数组成员(入口)可以在显式的时间点用 performance marks或measures 来创建(例如调用mark() 方法) .

此方法暴露给Window 和 Worker接口.

语法

取全部:

entries = window.performance.getEntries();
entries = window.performance.getEntries(PerformanceEntryFilterOptions);

取特定:

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

参数

PerformanceEntryFilterOptions 可选
PerformanceEntryFilterOptions 是一个带有以下键值的字典:

返回值

entries
一个由符合filter条件的PerformanceEntry 对象构成的数组 . 数组成员按PerformanceEntry.startTime时间顺序排列 . 如果没有符合filter条件的对象,那么返回空数组. 如果不带任何参数,返回全部entries.

Example

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

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

  // Create some performance entries via the mark() method
  performance.mark("Begin");
  do_work(50000);
  performance.mark("End");
  performance.mark("Begin");
  do_work(100000);
  performance.mark("End");
  do_work(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 + "]");
    check_PerformanceEntry(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 + "]");
    check_PerformanceEntry(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);
  }
}

//entryType,name,initiatorType  Examples
var p = performance.getEntries();

var ptyps = p.map((ele) => {return(ele.entryType)});
//Array(94) [ "navigation", "resource", "resource", "resource", "resource", "resource", "resource", "resource", "resource", "resource", … ]

var pnms = p.map((ele) => {return(ele.name)});
//Array(94) [ "document", "https://csdnimg.cn/public/static/css/avatar.css", "https://csdnimg.cn/public/common/libs/jquery/jquery-1.9.1.min.js", "https://csdnimg.cn/rabbit/exposure-click/main-1.0.5.js", "https://csdnimg.cn/release/phoenix/production/main-e96db8abdf.js", "https://csdnimg.cn/pubfooter/js/tracking-1.0.2.js", "https://csdnimg.cn/public/common/toolbar/js/content_toolbar.js", "https://csdnimg.cn/release/phoenix/production/markdown_views-ea0013b516.css", "https://csdnimg.cn/search/baidu_search-1.1.2.js?v=201802071056&autorun=true&install=true&keyword=%E5%B0%8F%E7%A8%8B%E5%BA%8F%E6%89%A7%E8%A1%8C%E9%A1%BA%E5%BA%8F", "https://csdnimg.cn/release/phoenix/production/main-f869aa95a4.css", … ]

var pityps = p.map((ele) => {return(ele.initiatorType)});
//Array(94) [ "navigation", "link", "script", "script", "script", "script", "script", "link", "script", "link", … ]

Specifications
Specification Status Comment
Performance Timeline Level 2
getEntries()
Candidate Recommendation getEntries() method has an optional argument.
Performance Timeline
getEntries()
Recommendation Initial definition.

浏览器兼容性

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support. (Yes) (Yes) (Yes) (Yes) 未实现 未实现
getEntries() method has an optional argument. 未实现 ? 未实现 未实现 未实现 未实现
Feature Android Android Webview Edge Firefox Mobile (Gecko) Firefox OS IE Phone Opera Mobile Safari Mobile Chrome for Android
Basic support 未实现 (Yes) (Yes) 25.0 (25.0) 1.2 (25.0) 10.0 未实现 未实现 (Yes)
getEntries() method has an optional argument. 未实现 未实现 ? 未实现 未实现 未实现 未实现 未实现 未实现时间顺序' PerformanceEntry

文档标签和贡献者

此页面的贡献者: ihgazni2
最后编辑者: ihgazni2,