博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用window.performance对应用性能监测
阅读量:4944 次
发布时间:2019-06-11

本文共 1585 字,大约阅读时间需要 5 分钟。

window.performance是HTML5 的一个新API。

API详细文档传送门:https://developer.mozilla.org/en-US/docs/Web/API/Window/performance

浏览器一般的加载顺序如下图:

 

所以根据上面的时间点,我们可以计算常规的性能值,如下:

(使用该api时需要在页面完全加载完成之后才能使用,最简单的办法是在window.onload事件中读取各种数据,因为很多值必须在页面完全加载之后才能得出。)

 

var timing = window.performance && window.performance.timing;

var navigation = window.performance && window.performance.navigation;

 

 

重定向次数:

var redirectCount = navigation && navigation.redirectCount;

 

跳转耗时:

var redirect = timing.redirectEnd - timing.redirectStart;

 

APP CACHE 耗时:

var appcache = Math.max(timing.domainLookupStart - timing.fetchStart, 0);

 

DNS 解析耗时:

var dns = timing.domainLookupEnd - timing.domainLookupStart;

 

TCP 链接耗时:

var conn = timing.connectEnd - timing.connectStart;

 

等待服务器响应耗时(注意是否存在cache):

var request = timing.responseStart - timing.requestStart;

 

内容加载耗时(注意是否存在cache):

var response = timing.responseEnd - timing.responseStart;

 

总体网络交互耗时,即开始跳转到服务器资源下载完成:

var network = timing.responseEnd - timing.navigationStart;

 

渲染处理:

var processing = (timing.domComplete || timing.domLoading) - timing.domLoading;

 

抛出 load 事件:

var load = timing.loadEventEnd - timing.loadEventStart;

 

总耗时:

var total = (timing.loadEventEnd || timing.loadEventStart || timing.domComplete || timing.domLoading) - timing.navigationStart;

 

可交互:

var active = timing.domInteractive - timing.navigationStart;

 

请求响应耗时,即 T0,注意cache:

var t0 = timing.responseStart - timing.navigationStart;

 

首次出现内容,即 T1:

var t1 = timing.domLoading - timing.navigationStart;

 

内容加载完毕,即 T3:

var t3 = timing.loadEventEnd - timing.navigationStart;

转载于:https://www.cnblogs.com/joyho/articles/4384306.html

你可能感兴趣的文章
2016 提高组c++ 错题
查看>>
网站通信协议升级到HTTPS&HTTP2
查看>>
猴子吃桃问题
查看>>
使用Win7+IIS7发布网站或服务步骤
查看>>
MVC公司架构介绍-框架分层
查看>>
python外部调用程序
查看>>
《JavaScript高级程序设计》读书笔记(三)基本概念第三小节 String、Object类型...
查看>>
Hyper-v 中 CentOS 连接外网之有线网卡
查看>>
JS字符串与汉字的字节获取
查看>>
函数的渐近增长表3
查看>>
DLL技术应用04 - 零基础入门学习Delphi47
查看>>
鱼C记事本V1.0 - 零基础入门学习Delphi27
查看>>
链接和作用域2 - C++快速入门43
查看>>
java中原子操作的实现分析
查看>>
Django------filter查询的使用
查看>>
织梦DedeCms网站更换域名后文章图片路径批量修改
查看>>
webkit内核浏览器的CSS写法
查看>>
activemq使用方法
查看>>
电力系统线路杆塔统计算法(连续数合并算法)
查看>>
史上最通俗分布式锁解读,看完不懂算我输
查看>>