前端性能优化

182 阅读1分钟

可以从网络优化,静态文件,js优化,css优化出发:更快的请求响应,减少请求,更小的文件体积,减少浏览器渲染压力。具体的有:

  • CDN

  • SSR

  • 首屏渐进式加载

  • 服务端文件压缩(gzip)

  • 代码压缩

  • webpack 树摇 tree shaking

  • 按需引入

  • http请求不带cookie

  • 减少http请求: http 1.x的雪碧图

  • http多地址请求 http 1.x 同一域名的请求有一定数量限制,超过限制数目的请求会被阻塞

  • 使用http2.0 (常见问题:HTTP2.0相比HTTP1.x做了哪些升级?多路复用;二进制分帧;服务端推送;数据流优先级;头部压缩)

  • 抽成公共代码

  • 尽量使用缓存

  • 接口按需请求

  • 减少dom

  • 图片懒加载

  • 路由懒加载

  • 脚本标签异步加载执行 预加载 放在底部等

  • 减少脚本标签

  • 减少变量,少用全局变量(要从局部找到全局)

  • 减少循环,优化算法

  • 事件委托,子dom事件由父元素响应

  • 节流、防抖

  • 异步处理

  • 减少闭包

  • 多线程

  • 减少回流,使用伪元素 减少js操作dom

  • 合并添加dom节点

  • content-visibility 屏幕外不渲染

  • 降低 CSS 选择器的复杂性

  • 移除事件监听、计时器

  • 虚拟滚动

  • 减少css背景图

  • vue Object.freeze()

  • vue 使用函数式模板