一,performance中会出现的属性字段:

memory:只有在chrome才有,提供了基本内存的使用情况

navigation:提供了操作的上下文,包括页面的加载,刷新,重定向次数等等

timing:提供了浏览器上下文事件结束的各种UNIX时间戳

二,memory属性

jsHeapSizeLimit:内存大小限制

totalJSHeapSize:可使用的内存大小

usedJSHeapSize:JS对象(包括V8引擎内部对象)占用的内存

三,navigation属性

redirectCount:重定向次数到本页面

type:0 正常页面(非刷新,重定向)1 通过刷新进入 2 通过浏览器前进后退按钮进入

255 非以上方式进入

四,timing属性

connectStart:HTTP域名解析完成的时间

connectEnd:HTTP浏览器与服务器之间连接建立完成的时间

domComplete:DOM文档解析完成,readyState变为complete

domContentLoadedEventStart:所有脚本已经执行完,开始执行DOMContentLoaded方法

domContentLoadedEventEnd:执行DOMContentLoaded方法结束

domInteractive:DOM结构加载结束,开始加载内嵌资源,readyState变为interactive

domLoading:DOM结构开始解析,readyState开始是loading

domainLookupStart:DNS域名查询开始

domainLookupEnd:DNS域名查询结束

fetchStart:浏览器发起任何请求之前的时间戳

loadEventStart:开始加载load事件

loadEventEnd:load事件加载结束

navigationStart:unload上一个文档的时间节点

redirectStart:第一个页面重定向开始的时间

redirectEnd:最后一个页面重定向结束的时间

requestStart:浏览器向服务器发起HTTP请求(包含缓存,本地资源)

responseStart:浏览器从服务器收到HTTP请求返回的第一个字节的时间

responseEnd:浏览器从服务器收到HTTP请求返回的最后一个字节的时间

secureConnectionStart:HTTPS协议握手之前的时间,如果非HTTPS,则为0

unloadEventStart:上一个文档unload事件的开始时间(需要是同源文档,否则为0)

unloadEventEnd:上一个文档unload事件的结束时间(需要是同源文档,否则为0)

五,时间应用

页面加载耗时:loadEventEnd - navigationStart

DNS查询耗时:domainLookupEnd - domainLookupStart

TCP链接完成握手耗时:connectEnd - connectStart

request请求耗时:responseEnd - responseStart

解析DOM树耗时:domComplete - domInteractive

白屏时间:domloading - fetchStart

DOMReady可操作时间:domContentLoadedEventEnd - fetchStart

onload总下载时间:loadEventEnd - fetchStart

重定向时间:redirectEnd - redirectStart

六,performance通用方法

performance.now()

根据navigation属性,开始计算毫秒数,通过两次时间相减可以计算某个操作的间隔时间

performance.mark(name)

基于name在浏览器的性能输入缓冲区中存入一个timestamp,可以多次重复录入,

可以使用performance.getEntriesByName()获取到对应的Array,

可以使用performance.clearMarks()清除

七,最后是时间关系图(W3C)

【JavaScript】关于js中performance性能监控相关推荐

  1. 【JavaScript】js中的原型继承

    文章目录 1. 理解继承 2. js中的继承(原型继承) 3. js6种继承方式 3.1 原型链继承 3.2 盗用构造函数 3.3 组合继承 3.4 原型式继承 3.5 寄生式继承 3.6 寄生式组合 ...

  2. [转]JavaScript/Node.JS 中的 Promises

    JavaScript Promises 初体验 Promise 是什么? Promise 对象用来进行延迟(deferred) 和 异步(asynchronous) 计算. 一个 Promise 处于 ...

  3. 初学JavaScript:js中的对象(对象+原型对象)

    文章目录 js对象详解 1.创建对象 字面量模式创建对象 构造函数模式创建对象 2.访问对象 访问属性 访问方法 3.遍历对象中的属性和属性值 4.往对象中新添属性 5.删除对象中的属性 6.Obje ...

  4. [JavaScript] 探索JS中的函数秘密

    函数长啥样? 把一些要重复使用的内容封装到函数内. function foo(title) {console.log(title) } foo('title') foo('dust') foo('he ...

  5. jsfor循环终止_【JavaScript】JS中如何跳出循环/结束遍历

    直接抛结论,下表是JS中常用的实现循环遍历的方法的跳出/结束遍历的办法,经过测试后的总结.可能各位大佬还有其他的办法,我在此表示大佬NB. 序号 方法 break continue return re ...

  6. 浏览器Performance性能监控使用详解

    文章目录 1.Performance 2.测试性能操作流程 3.Performance检测结果详解 区域1:controls[控制栏] 区域2:overview[网页性能总览图] 区域3:火焰图[各项 ...

  7. performance性能监控

    详细看MDN上 setTimeout(() => {const {fetchStart, // 开始访问requestStart, // 请求的开始responseStart, // 响应的开始 ...

  8. 【JavaScript】JS中的预解析

    JavaScript解析器在运行JavaScript代码的时候分为两步:预解析 和 代码执行(按顺序从上到下). 预解析:js引擎会把js里面所有的var和function提升到当前作用域的最前面. ...

  9. 【JavaScript】js中内存泄漏的几种情况?

    文章目录 一.是什么 二.垃圾回收机制 标记清除 引用计数 小结 三.常见内存泄露情况 参考文献 一.是什么 内存泄漏(Memory leak)是在计算机科学中,由于疏忽或错误造成程序未能释放已经不再 ...

最新文章

  1. mx:button加skin光晕点击时,大小不一样
  2. 没好域名?就得给自己换个名
  3. 解决修改SQL SERVER 默认1433端口 访问出错的问题;
  4. python是什么和c++是什么区别_c++和python的区别有哪些
  5. 数据量大和高并发解决方法
  6. linux如何判断同名进程个数,Linux下判断是否存在多个同名进程
  7. 绝大部分投资者没资格谈心态
  8. VB的doevents,制造多线程的效果
  9. python100例详解-Python字典实现简单的三级菜单(实例讲解)
  10. 很久以前录制的CSI课程共享
  11. 不是所有的U盘都能作为启动盘
  12. BZOJ-2456-mode(思维题)
  13. 1g等于多少mb计算机网络,1g能存多少首歌曲,1GB等于多少MB
  14. Charles打开macOS proxy无法上网
  15. JavaScript基础 ——【了解JavaScript】
  16. C语言 三个数字比较大小
  17. 第十二章:项目采购管理 - (12.0 什么是项目采购管理)
  18. 解决电脑分辨率及缩放导致页面变形的问题
  19. oracle+pim+全称,CSS_Oracle ASM自动管理存储管理简介,1 什么是ASMASM全称为Automa - phpStudy...
  20. 如何高效实现扫描局域网IP、主机名、MAC和端口

热门文章

  1. live555 android 直播,通过live555实现H264 RTSP直播
  2. mysql行转列sql函数_SQL之行转列Pivot函数
  3. 面向对象编程思想--继承
  4. 现在商业有种竞争叫“跨界打击”
  5. 题目:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?
  6. 基于LABVIEW和MATLAB的联合编程图像降噪
  7. word里面批量对图片进行编号
  8. mongoTemplate使用游标查询海量数据
  9. 基于SpringBoot+Vue实现的仿掘金论坛系统(包含完整源码以及部署教程)
  10. vue-cli搭建项目