前端性能优化大纲

性能指标

FP (First Paint) 首次绘制
FCP (First Contentful Paint) 首次内容绘制
FMP(First Meaningful Paint)首次绘制页面主要内容
LCP (Largest Contentful Paint) 最大内容渲染
TTI (Time to Interactive) 可交互时间
DCL (DomContentloaded)
L(load)
performance.now()

加载时优化

  • 网络:DNS 优化,减少 HTTP 请求,减少重定向,使用 HTTP2,CDN,Gzip,设置缓存(三级),
  • 加载:延迟(async),异步(defer),预加载(preload,prefetch),懒加载(IntersectionObserver),CSS 放头部,JS 放尾部,骨架屏,动态 Polyfill
  • 图片:预加载,懒加载,iconfont,webp 嗅探
  • webpack:base64,压缩,Tree shaking,动态 Import,拆包 chunk,Dll1
  • 服务端渲染(SSR),客户端预渲染(Prerendering)
  • 数据预取,包括接口数据,和加载详情页图片

运行时优化

  • 减少回流重绘2
  • 变量保存属性,使用事件委托,节流,防抖
  • 减少组件层级,首页不加载不可视组件
  • Web Workers
  • 合并接口请求
  • 避免页面卡顿 (16ms 内完成操作并渲染)requestAnimationFrame,requestIdleCallback,IntersectionObserver,MutationObserver,ResizeObserver,PostMessage。

原文链接:前端性能优化大纲

本文章由javascript技术分享原创和收集

发表评论 (审核通过后显示评论):