• 许童童
    2019-12-04
    老师真的是太良心了,又回来给我们加餐了,感谢老师。
    
     13
  • 歌顿
    2019-12-12
    文中:我们先来分析下第一项指标 FP,如果 FP 时间过久,那么直接说明了一个问题,那就是页面的 HTML 文件可能由于网络原因导致加载时间过久,这块具体的分析过程你可以参考。

    这里 FP 应该是 FCP 吧,FP 创建空白界面跟网络有关系吗?

    作者回复: 也是有关系的,因为浏览器还需要根据HTTP响应头来判断要不要继续执行导航流程!

    
     1
  • Mr. Cheng
    2019-12-05
    终于等到这部分内容了,感谢老师

    作者回复: 这只是开胃菜,后面还有关于performance的硬菜

    
     1
  • ytd
    2019-12-04
    赞~
    
     1
  • happychap
    2020-01-28
    老师,您好!本文中提到的speed index指标与web page test中的差异极大,wpt的si计算的是从空白页到页面完全绘制整个时间段里对已绘制区域百分比的积分,个人觉得这种计算方式更能表达页面给人带来的体验。
    
    
  • -_-_aaa
    2019-12-20
    文中“上图中,bundle.js 是关键资源,因此需要完成加载之后,渲染进程才能执行该脚本,然后脚本会修改 DOM,引发重绘和重排等一系列操作,当页面中绘制了第一个像素时,我们把这个时间点称为 First Content Paint,简称 FCP”,那如果bundle.js 是放在body标签之后的,那我觉得即使没有下载完bundle.js ,其实浏览器也是可以解析上面的html结构的,也可以完成渲染一部分,难道非待等bundle.js 下载完后才执行脚本修改dom,重绘重排,绘制第一个像素,如果真是这样那平时把script标签放在head上,不考虑获取dom,首屏性能是一样的。假如说这个bundle.js 里面没有操作dom的代码,还会等bundle.js加载之后,渲染进程才能执行该脚本。或者给bundle.js加了async和defer属性里面也没操作dom的js代码,那首屏渲染还会等bundle.js下载完才能完成吗?
    
    
  • -_-_aaa
    2019-12-20
    文中“页面加载过程”这个图中,在解析html的过程中有个Token阶段还有AST阶段是包含在“Parser HTML”阶段中了吗?那文中“在渲染进程确认要渲染当前的请求后,渲染进程会创建一个空白页面”中渲染进程是如何确认要渲染当前请求的,有没有一些判断确定它到底该不该、能不能,怎么解析?
    
    
  • 空山鸟语
    2019-12-20
    老师,文中介绍了一些性能指标,比如fp fcp等,但是这些数据如何使用performance.timing里的数据,给统计出来呢?
    比如首屏时间,这个结束点在工具里很容易看到,但是如何拿到这个点的时间数据呢?

    作者回复: 浏览器统计的方式非常复杂,FP是通过GPU是否开始绘制来统计的,FCP又是在其它的地方统计的,源代码如何统计的细节我也没详细查看,不过这些数据你可以通过JS接口来获取到,具体你可以搜索"Paint Timing API"

     1
    
  • 70K
    2019-12-12
    Audits 是不是要翻墙才能用?

    作者回复: 嗯。要的

    
    
  • logic
    2019-12-06
    期待老师的下一篇 performance 的讲解。
    
    
我们在线,来聊聊吧