关于前端性能优化,你做了哪些?

本文介绍了前端性能优化的多种方法,包括webpack打包优化、gzip压缩、图片处理、减少cookie体积、预解析功能、浏览器缓存、cdn加速、第三方插件体积优化、css样式优化、懒加载、webworker多线程处理和使用http2协议。通过这些实践,可以显著提升网页加载速度和用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. webpack打包优化,分包,压缩

这里使用webpack5打包,会有一些新特性,比较好用。

  • 开启持久化缓存加快构建速度,
  • Tree Shaking:消除未使用的代码,减小文件体积,
  • splitChunks中进一步详细分包,提取公共的模块,减少重复打包,
  • 使用压缩插件,压缩打包的体积。

2. 使用gzip压缩传输

Gzip压缩是一种压缩方式,针对文本文件时通常能降低2/3的体积,可以减少传输的负担。

HTTP协议中用头部字段Accept-EncodingContent-Encoding对「采用何种编码格式传输正文」进行了协定,请求头的Accept-Encoding会列出客户端支持的编码格式。当响应头的 Content-Encoding指定了gzip时,浏览器则会进行对应解压。

一般浏览器都支持gzip,所以Accept-Encoding也会自动带上gzip,所以我们需要让资源服务器在Content-Encoding指定gzip,并返回gzip文件

3. 图片处理

  • 使用雪碧图合并图片,通过css定位展示不同图片,减少浏览器请求次数。
  • 优先级不高的图片使用懒加载,或者使用背景图background-image定位替代img标签。
  • 动态渲染,当页面快要到视口时再加载图片。

4. 减少cookie体积

减少请求头cookie的体积,加快请求速度。

5. 开启预解析功能,Prefetch、Preload

<link>标签的rel属性的两个可选值。

Prefetch,预请求,是为了提示浏览器,用户未来的浏览有可能需要加载目标资源,所以浏览器有可能通过事先获取和缓存对应资源,优化用户体验。
Preload,预加载,表示用户十分有可能需要在当前浏览中加载目标资源,所以浏览器必须预先获取和缓存对应资源。

6. 开启浏览器缓存

根据业务场景开启协商缓存或者强缓存策略。有以下优点:

  • 减少冗余的数据传输
  • 减少服务器负担
  • 加快客户端加载网页的速度
  1. 强缓存特点:
    当请求资源的时,如果是之前请求过的并使用强缓存,那么在过期时间内将不会发送本次请求向服务器获取资源,而是直接从浏览器缓存中获取(不管资源是否改动)。过期了将重新从服务器获取,并再次强缓存。
    强缓存是利用http头中的ExpiresCache-Control两个字段来控制的ÿ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

为了WLB努力

给点小钱,你的鼓励是我坚持动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值