PerformanceNavigationTiming

Baseline 广泛可用 *

此功能已成熟,并且适用于多种设备和浏览器版本。自 2021 年 10 月以来,它已在所有浏览器中可用。

* 此特性的某些部分可能存在不同级别的支持。

PerformanceNavigationTiming 接口提供了用于存储和检索有关浏览器文档导航事件的指标的方法和属性。例如,此接口可用于确定加载或卸载文档所需的时间。

性能时间线仅包含当前文档,因此性能时间线中只有一个 PerformanceNavigationTiming 对象。它继承了 PerformanceResourceTimingPerformanceEntry 的所有属性和方法。

PerformanceEntry PerformanceResourceTiming PerformanceNavigationTiming

下图显示了 PerformanceNavigationTiming 中定义的所有时间戳属性。

Timestamp diagram listing timestamps in the order in which they are recorded for the fetching of a document

实例属性

此接口通过以下方式限定和约束 PerformanceEntry 接口的以下属性:

PerformanceEntry.entryType 只读

返回 "navigation"

PerformanceEntry.name 只读

返回 文档的 URL。请注意,文本片段以及任何其他片段指令都会从 URL 中删除。

PerformanceEntry.startTime 只读

返回值为 0DOMHighResTimeStamp

PerformanceEntry.duration 只读

返回一个 时间戳,该时间戳是 PerformanceNavigationTiming.loadEventEndPerformanceEntry.startTime 属性之间的差值。

此接口还通过以下方式限定和约束 PerformanceResourceTiming 接口的以下属性:

PerformanceResourceTiming.initiatorType 只读

返回 "navigation"

该接口还支持以下属性:

PerformanceNavigationTiming.activationStart 只读 实验性

一个 DOMHighResTimeStamp,表示文档开始预渲染到激活之间的时间。

PerformanceNavigationTiming.criticalCHRestart 只读 实验性

一个 DOMHighResTimeStamp,表示由于 Critical-CH HTTP 响应头不匹配而导致连接重启的时间。

PerformanceNavigationTiming.domComplete 只读

一个 DOMHighResTimeStamp,表示在用户代理将文档的 readyState 设置为 "complete" 之前的时间。

PerformanceNavigationTiming.domContentLoadedEventEnd 只读

一个 DOMHighResTimeStamp,表示在当前文档的 DOMContentLoaded 事件处理程序完成之后的时间。

PerformanceNavigationTiming.domContentLoadedEventStart 只读

一个 DOMHighResTimeStamp,表示在当前文档的 DOMContentLoaded 事件处理程序开始之前的时间。

PerformanceNavigationTiming.domInteractive 只读

一个 DOMHighResTimeStamp,表示在用户代理将文档的 readyState 设置为 "interactive" 之前的时间。

PerformanceNavigationTiming.loadEventEnd 只读

一个 DOMHighResTimeStamp,表示在当前文档的 load 事件处理程序完成之后的时间。

PerformanceNavigationTiming.loadEventStart 只读

一个 DOMHighResTimeStamp,表示在当前文档的 load 事件处理程序开始之前的时间。

PerformanceNavigationTiming.notRestoredReasons 只读 实验性

一个 NotRestoredReasons 对象,提供关于当前文档因何种原因被阻止使用后退/前进缓存(bfcache)进行导航的报告数据。

PerformanceNavigationTiming.redirectCount 只读

一个数字,表示当前浏览上下文中自上次非重定向导航以来发生的重定向次数。

PerformanceNavigationTiming.type 只读

一个字符串,表示导航类型。可以是 "navigate""reload""back_forward"

PerformanceNavigationTiming.unloadEventEnd 只读

一个 DOMHighResTimeStamp,表示在当前文档的 unload 事件处理程序完成之后的时间。

PerformanceNavigationTiming.unloadEventStart 只读

一个 DOMHighResTimeStamp,表示在当前文档的 unload 事件处理程序开始之前的时间。

实例方法

PerformanceNavigationTiming.toJSON()

返回 PerformanceNavigationTiming 对象的 JSON 表示。

规范

规范
导航计时 Level 2
# sec-PerformanceNavigationTiming

浏览器兼容性

另见