前端性能优化笔记2 第二章 度量
创始人
2024-05-30 20:33:03
0

相关 Performance API 都在 window.performance 对象下

performance.now() 方法

  • 精度精确到微妙
  • 获取的是把页面打开时间点作为基点的相对时间,不依赖操作系统的时间。

部分浏览器不支持 performance.now() 方法,可以用 Date.now() 模拟

performance.now = function() {// performance.timing.navigationStart 表示页面打开时的时间戳,非高精度时间return Date.now() - performance.timing.navigationStart
}

度量首屏

First Paint(FP,第一次绘制时间)

FP代表浏览器第一次在页面上绘制的时间,这个时间仅仅是指开始绘制的时间,但是未必真的绘制了什么有效的内容。

First Contentful Paint(FCP,第一次有内容的绘制)

FCP代表浏览器第一次绘制出 DOM 元素(如文字、标签等)的时间。

FP可能和FCP是同一个时间,也可能早于FCP,一般来说两者的差距不会太大。

Time to Interactive(TTI,可交互时间)

First Meaningful Paint(FMP,第一次有意义的绘制)

FMP是一个主观的指标,毕竟意义本身就是一个主观的概念。

FMP作为一个主观指标,指的是我们主观认为页面渲染有意义内容的时间点。

度量FMP的方式:

关键逻辑计时

手动使用 JavaScript 记录时间点,从而将其作为 FMP 的时间。

例如:在 React 中,可以在组件第一次挂载后打一个时间点。

useEffect(() => {const FMP_TIME = performance.now()reprotFMP(FMP_TIME)
}, [])

Hero Element

某项重要元素的展示时间就可以被视为 FMP 的时间,如搜索结果页的搜索内容、首页的banner等。这样的关键元素就是 Hero Element。可以使用 Hero Element 的渲染完成时间作为 FMP。

如:

为了使度量结果更加精准,Google 也在推动新的标准提案 element-timing 

同样以图片为例,可以使用如下方式来标记和计算这张图片的渲染时间,而后从 JavaScript 的 Performance API 中得到其具体的耗时。

这种方式目前只有 Chrome 支持

Frames Per Second(FPS,每秒传输帧数)

度量流畅度的指标

对于一个网页来说,达到 60fps 就会让用户感到非常流畅,如果显著低于这个值,那么用户可能就会感到卡顿。

页面至少每隔 16.7ms 就需要渲染一次,否则就会出现丢帧。

如果 FPS 长期处在过低的值,用户感受到的卡顿就会非常明显。

Core Web Vitals (核心 Web 指标)

Largest Contentful Paint (LCP,最大元素渲染时间)

LCP 关注的页面上最大面积的元素渲染完成的时间。

浏览器会持续探测页面中占用面积最大的元素,这个元素可能会在加载过程中发生变化(如出现了占用面积更大的元素),直到页面完全加载后,才会把最终占用面积最大的元素的渲染时间定为LCP探测的元素。

如何确定面积:

元素的面积主要是根据用户在页面中能够看到的元素的大小计算的。

  • 显示到屏幕以外,或者被容器的 overflow 裁剪、遮挡的面积不计算在内。
  • 文字元素的面积为包含文字的最小矩形的面积。
  • 图片以实际组件的大小计算,而非原始图片的大小。
  • CSS 设置的 border、padding 等都不计算在内。

1

相关内容

热门资讯

包含居舍的成语 包含居舍的成语包含居舍的成语白云亲舍 亲:指父母;舍:居住。比喻思念父母的话。百舍重茧 形容走远道的...
笔若随心神则远 人惟无欲品能清... 笔若随心神则远 人惟无欲品能清 这句话算春联吗?可以算是对联。做春联不怎么恰当。
三千越甲可吞吴 是哪首诗里的 ... 三千越甲可吞吴 是哪首诗里的 整首诗是什么这句话出自蒲松龄的一首诗,具体叫什么我记得不是很清楚,但是...
为什么动物都害怕火和巨大的声音... 为什么动物都害怕火和巨大的声音?动物的怕火,是源于在进进化过程中,由于先辈被火所伤在遗传物质中流传下...
猫爸爸是美短,猫妈妈是田园猫,... 猫爸爸是美短,猫妈妈是田园猫,生的小猫没有一个像猫爸,为什么呢?这种情况猫爸爸是美短猫,妈妈是田园猫...
女生和男生聊天的时候,男生听了... 女生和男生聊天的时候,男生听了女生说的话之后会笑,这个是什么意思啊。。。 是觉得你可爱,以我的观...
在线等,一杯茶算个啥,这句话的... 在线等,一杯茶算个啥,这句话的含义是如题 快 文章:我走到集市上的时候,渴极了。我听不进卖鸡卖鸭的吆...
小学课本棉花姑娘有关的小故事? 小学课本棉花姑娘有关的小故事?棉花姑娘有关的小故事,棉花姑娘生病了,长虫子了,小青蛙把虫子全吃了,到...
怎样修改别人发来的短信? 怎样修改别人发来的短信?转发,编辑修改,另存为。
十五个月的宝宝如何早教? 给宝... 十五个月的宝宝如何早教? 给宝宝听音乐,讲故事!都可以的!十五个月的宝宝如何早教? 给宝宝听音乐,讲...
三三三三五五五五五五可以成一个... 三三三三五五五五五五可以成一个什么数字成语三五成群!!
求一本外国科幻小说的名字 求一本外国科幻小说的名字建议你看一下阿西莫夫的、、比如“请用S拼我的名字”,凡尔纳的也很不错、海底两...
急求张怡宁成长奋斗史(3分钟以... 急求张怡宁成长奋斗史(3分钟以张怡宁口吻叙述的演讲词)张怡宁口吻叙述眼睛眉毛浓浓总冷着张脸---简直...
月球之谜 阅读答案 月球之谜 阅读答案五年级下1.文章介绍“月球之谜”是指关于月球的起源和地球与月球的距离2.A、B、C...
螃蟹背部有一张微笑的脸和嘴巴 螃蟹背部有一张微笑的脸和嘴巴是关公蟹吧?是这样的吗让卜?这种蟹叫关坦绝穗公蟹宏盯。
小白兔 春天 地里 写童话,么... 小白兔 春天 地里 写童话,么写?小白兔的种子 有一天,小绵羊和小白兔约好到地里去拔萝卜。“拔萝...
话配画 以家乡内容 话配画 以家乡内容话配画 以家乡内容  今天,我参加了三门县青少年活动中心组织的“家乡巨变”红色之旅...
钢琴 牧童短笛 怎么合啊,谢谢 钢琴 牧童短笛 怎么合啊,谢谢不懂什么意思
刚刚看完《司藤》不得不感叹云南... 刚刚看完《司藤》不得不感叹云南真美啊,《司藤》火的原因你知道吗?这部电视剧火是因为演员的演技好,而且...
守护甜心的两个主角是谁 守护甜心的两个主角是谁女主角:日奈森亚梦男主角:边里唯世虽然日奈森亚梦和边里唯世是主角 但是人气在...