PerformanceTiming - 包含页面的各种性能计时信息

已废弃
该特性已经从 Web 标准中删除,虽然一些浏览器目前仍然支持它,但也许会在未来的某个时间停止支持,请尽量不要使用该特性。

警告: 该接口在 Navigation Timing Level 2 规范中已弃用。请改用 PerformanceNavigationTiming 接口。

PerformanceTiming 接口是为向后兼容而保留的旧接口,并包含为加载和使用当前页面期间发生的各种事件提供性能计时信息的属性。您可以使用 window.performance.timing 属性获得页面相应的 PerformanceTiming 对象。

属性

PerformanceTiming 接口没有继承任何属性。

这些属性分别描述了到达页面加载过程中特定点的时间。有的对应 DOM 事件;有些则描述了特定的内部浏览器操作发生的时间。

每个时间都是以 Unix时间unsigned long long)的形式表示的,代表自 UNIX 纪元以来的时刻,单位为毫秒。

这些属性按照它们在导航过程中出现的顺序列出。

PerformanceTiming.navigationStart 只读

当卸载提示在同一浏览上下文中的前一个文档上终止时的时间。如果没有以前的文档,则此值将与 PerformanceTiming.fetchStart 相同。

PerformanceTiming.unloadEventStart 只读

unload 事件被触发时,表示窗口中前一个文档开始卸载的时间。如果没有先前的文档,或者先前的文档或所需的重定向之一不是同源的,则返回的值为 0

PerformanceTiming.unloadEventEnd 只读

unload 事件处理程序完成时的时间。如果没有先前的文档,或者先前的文档或所需的重定向之一不是同源的,则返回的值为 0

PerformanceTiming.redirectStart 只读

第一次 HTTP 重定向开始的时间。如果没有重定向,或者重定向之一的来源不同,则返回的值为 0

PerformanceTiming.redirectEnd 只读

当最后一次 HTTP 重定向完成时,即收到 HTTP 响应的最后一个字节的时间。如果没有重定向,或者重定向之一的来源不同,则返回的值为 0

PerformanceTiming.fetchStart 只读

当浏览器准备好使用 HTTP 请求获取文档的事件。这个时刻是在检查任何应用程序缓存之前

PerformanceTiming.domainLookupStart 只读

当域名查找开始的时间。如果使用持久连接,或者信息存储在缓存或本地资源中,则该值将与 PerformanceTiming.fetchStart 相同。

PerformanceTiming.domainLookupEnd 只读

当域名查找完成的事件。如果使用持久连接,或者信息存储在缓存或本地资源中,则该值将与 PerformanceTiming.fetchStart 相同。

PerformanceTiming.connectStart 只读

当打开连接的请求被发送到网络的时间。如果传输层报错,再次开始连接建立,则时间为最后一次连接建立开始时间。如果使用持久连接,该值将与 PerformanceTiming.fetchStart 相同。

PerformanceTiming.connectEnd 只读

当连接打开时网络的时间。如果传输层报错,重新开始连接建立,则时间为最后的连接建立结束时间。如果使用持久连接,该值将与 PerformanceTiming.fetchStart 相同。当所有安全连接握手或 SOCKS 身份验证终止时,连接被视为已打开。

PerformanceTiming.secureConnectionStart 只读

当安全连接握手开始的时间。如果不是安全连接,则返回 0

PerformanceTiming.requestStart 只读

当浏览器发送请求以从服务器或缓存中获取实际文档的时间。如果在请求开始后传输层失败并重新打开连接,则该属性将设置为新请求对应的时间。

PerformanceTiming.responseStart 只读

当浏览器从缓存或本地资源接收到响应的第一个字节的时间。

PerformanceTiming.responseEnd 只读

当浏览器从服务器、缓存或本地资源,接收到响应的最后一个字节,或者连接关闭时(如果关闭提前发生)的时间。

PerformanceTiming.domLoading 只读

当解析器开始工作的时间,也就是当它的 Document.readyState 变为 'loading' 并且相应的 readystatechange 事件被抛出时。

PerformanceTiming.domInteractive 只读

当解析器完成对主文档的工作的时间,也就是当它的 Document.readyState 变为 'interactive' 并且相应的 readystatechange 事件被抛出时。

PerformanceTiming.domContentLoadedEventStart 只读

在解析器发送 DOMContentLoaded 事件之前的时间,也就是在所有需要在解析后立即执行的脚本都执行完毕之后。

PerformanceTiming.domContentLoadedEventEnd 只读

在所有需要尽快执行的脚本,无论是否按顺序,都已经执行完毕之后的时间。

PerformanceTiming.domComplete 只读

当解析器完成对主文档的工作的时间,也就是当它的 Document.readyState 变为 'complete' 并且相应的 readystatechange 事件被抛出时。

PerformanceTiming.loadEventStart 只读

当为当前文档发送 load 事件的时间。如果此事件尚未发送,则返回 0

PerformanceTiming.loadEventEnd 只读

load 事件处理程序终止的时间,即加载事件完成时。如果此事件尚未发送,或尚未完成,则返回 0

方法

PerformanceTiming 接口没有继承任何方法。

PerformanceTiming.toJSON()

返回一个 JSON 对象,表示该 PerformanceTiming 对象。

规范

此功能不再有望成为标准,因为 Navigation Timing 规范已将其标记为已弃用。

请改用 PerformanceNavigationTiming 接口。

桌面浏览器兼容性

暂无兼容数据

相关链接