window.performance 是 JavaScript 中的一个 API,用于获取浏览器的性能信息,包括页面加载时间、资源加载时间、网络连接时间、DNS 查询时间、TCP 连接时间、SSL 握手时间、重定向次数等。
window.performance API 包含了多个属性和方法,其中最常用的是 performance.timing 属性,它提供了加载页面时各个阶段的时间戳,例如:navigationStart: 开始导航的时间戳。
fetchStart: 开始获取第一个资源的时间戳。
domainLookupStart: 开始进行 DNS 查询的时间戳。
connectStart: 开始建立网络连接的时间戳。
requestStart: 开始请求资源的时间戳。responseStart: 开始接收资源响应的时间戳。
responseEnd: 完成接收资源响应的时间戳。domLoading: 开始解析文档的时间戳。
domInteractive: 文档解析完成并且所有子资源也已解析完毕的时间戳。domContentLoadedEventStart: DOMContentLoaded 事件的开始时间戳。
domContentLoadedEventEnd: DOMContentLoaded 事件的结束时间戳。loadEventStart: load 事件的开始时间戳。
loadEventEnd: load 事件的结束时间戳。
通过 performance.timing 属性可以计算出页面的加载时间、资源加载时间等性能指标,从而进行性能优化和监控。例如,可以使用以下代码获取页面的加载时间:var timing = window.performance.timing;需要注意的是,window.performance API 的精度和支持程度可能因浏览器和操作系统的不同而有所不同,需要进行兼容性测试和适配。
var loadTime = timing.loadEventEnd - timing.navigationStart;
console.log('页面加载时间为 ' + loadTime + ' 毫秒');
网友回复