深入理解前端性能监控
mark方法用来自定义添加标记时间。使用方法如下:
保存后的值可以通过 performance.getEntriesByname( 'myMeasure' )或者 performance.getEntriesByType('measure')查询。 Performance.clearMeasures() 从浏览器的性能输入缓冲区中移除自定义添加的 measure Performance.getEntriesByName() 返回一个 PerformanceEntry 对象的列表,基于给定的 name 和 entry type Performance.getEntriesByType() 返回一个 PerformanceEntry 对象的列表,基于给定的 entry type Performance.measure() 在浏览器的指定 start mark 和 end mark 间的性能输入缓冲区中创建一个指定名称的时间戳,见上例 Performance.toJSON() 是一个 JSON 格式转化器,返回 Performance 对象的 JSON 对象 资源缓冲区监控 Performance.setResourceTimingBufferSize() 设置当前页面可缓存的最大资源数据个数,entryType为resource的资源数据个数。超出时,会清空所有entryType为resource的资源数据。参数为整数(maxSize)。配合performance.onresourcetimingbufferfull事件可以有效监控资源缓冲区。当entryType为resource的资源数量超出设置值的时候会触发该事件。 Performance.clearResourceTimings() 从浏览器的性能数据缓冲区中移除所有的 entryType 是 "resource" 的 performance entries 下面是mdn上关于这个属性的一个demo。这个demo的主要内容是当缓冲区内容满时,调用buffer_full函数。
使用performance的这些属性和方法,能够准确的记录下我们想要的时间,再加上日志采集等功能的辅助,我们就能很容易的掌握自己网站的各项性能指标了。 兼容性 目前主流浏览器虽然都已支持performance对象,但是并不能支持它上面的全部属性和方法,有些细微的差别。本文主要依据chrome和qq浏览器测试了相关属性和方法,均可使用。 我们做了什么?(划重点) (编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |