web性能优化二-文件压缩与混淆

本文介绍了前端开发中常用的资源压缩方法,包括HTML、CSS及JavaScript的压缩手段,并讨论了文件合并的优势与潜在问题,提供了实用的建议。

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

html 压缩

html压缩
  1. 使用在线网站进行压缩在线压缩工具
  2. nodejs提供的html-minifier工具
  3. 后端模板引擎渲染压缩(ejs /jade模板引擎)
  4. gulp/webpack等构建工具提供的插件的压缩
css压缩

首先对无效代码的删除,减少文件的大小,提升css渲染速度;对css语义进行合并

  1. 使用在线网站进行压缩在线压缩工具
  2. 使用html-minifier对html中 的css进行压缩;
  3. 使用clean-css对css 进行压缩
js压缩与混淆

无效字符的删除;剔除注释;代码语义的缩减和优化;代码保护(在客户端容易被看到)


  1. 使用在线网站进行压缩在线工具
  2. 使用html-minifier对html中 的js进行压缩
  3. 使用uglifyjs2 对js进行压缩
    以上三种方式对html,css,javascript等文件进行压缩,会节省这些文件在网络传输的时间;

以下是文件合并在网络传输的示意图
文件合并示意图

当然文件合并不一定都是优点,也会有一些问题
1. 首屏渲染问题,为什么这么说呢?因为如果首屏需要加载三个js文件,但是a.js是渲染页面的,如果合并后,文件变大会造成页面渲染时间变长了;
2. 缓存失效问题,如果每次变动一个js从而会导致整个合并后的文件的缓存失效(因为md5戳唯一表示文件是否被改变)
建议做法
1. 公共库合并,将公共库单独打包成一个文件,不会影响公共库的缓存;
2. 不同页面的合并, 针对现在的单页应用开发的,按需加载(webpack异步加载组件);
3. 见机行事,随机应变,针对不同的业务场景,使用针对性的方式
4. 浏览器并发请求资源是有限制的,这个限制是不同的浏览器厂商是不一样的

各个浏览器并行处理请求的数量,仅供参考,因为会有一些因为版本的提升,会有变化

版本HTTP1.0HTTP1.1
IE 6\742
IE 866
IE 91010
IE 1066
IE 1166
chrome66
firefox66

方案:

  1. 对比文件压缩前后的加载速度和浏览器渲染速度,考虑什么文件进行合并和压缩;
  2. 可以推荐大家使用百度的前端构建工具fis3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值