性能:getEntriesByType() 方法
getEntriesByType()
方法返回在给定类型的性能时间线中当前存在的 PerformanceEntry
对象数组。
如果您对特定名称的性能条目感兴趣,请参阅 getEntriesByName()
。对于所有性能条目,请参阅 getEntries()
。
注意:此方法不会通知您有关新性能条目的信息;您只会获得在调用此方法时性能时间线中存在的条目。若要接收有关可用条目的通知,请使用 PerformanceObserver
。
此方法完全不支持以下条目类型,即使这些类型的条目可能存在也不会返回
"element"
(PerformanceElementTiming
)"event"
(PerformanceEventTiming
)"largest-contentful-paint"
(LargestContentfulPaint
)"layout-shift"
(LayoutShift
)"longtask"
(PerformanceLongTaskTiming
)
若要访问这些类型的条目,您必须改用 PerformanceObserver
。
语法
js
getEntriesByType(type)
参数
type
-
要检索的条目类型,例如 "
mark
"。有效条目类型列在PerformanceEntry.entryType
中。可以使用静态属性PerformanceObserver.supportedEntryTypes
检索支持的entryTypes
。
返回值
具有指定 type
的 Array
PerformanceEntry
对象。项目将根据条目的 startTime
按时间顺序排列。如果没有任何对象具有指定的 type
,或者没有提供参数,则返回一个空数组。
示例
记录资源条目
以下示例记录所有类型为 "resource
" 的条目。
js
const resources = performance.getEntriesByType("resource");
resources.forEach((entry) => {
console.log(`${entry.name}'s startTime: ${entry.startTime}`);
});
规范
规范 |
---|
性能时间线 # dom-performance-getentriesbytype |
浏览器兼容性
BCD 表格仅在浏览器中加载