performance
性能指标
FPS(frame per second)
概念: 每秒钟画面更新的次数。一般来说,FPS 越高,动画会越流畅。 目前大多数设备(浏览器)支持的 fps 为 60(1s 60 帧, 也就是 1000ms / 60 = 16.67ms 一帧) 一般来说,帧率在 30 以下,人眼会分辨的出来卡顿,30-50 的话,看人~ 50 以上的话,人眼基本感知不出卡顿。
计算方法
方案 1: requestAnimationFrame:
一般来说,requestAnimationFrame 这个方法在 1s 内会执行 60 次(不卡帧的情况)。
✨✨✨ 方案 2:rendering tools
实时查看页面帧率 & GPU 使用率
直接快捷键调出命令行工具,输入 fps 就行,超方便。
JS heap size
run show performance
Memory
强制回收内存 按时间线来记录 allocation
图片优化
加载机制
图片的加载可以分为懒加载和预加载。 这两种加载方式优化的场景也不太一样。 如果不做这些处理,图片默认的加载机制为:
- 如果
img标签设置了display: none,它虽然不会展示,但还是会加载图片。 - 如果父级
div标签设置了display: none, 那它里面的子元素,背景图不会被加载,img