Simonzhangs' blog Simonzhangs' blog
首页
  • 前端文章

    • HTML
    • CSS
    • JavaScript
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • JS设计模式总结
  • 《Vue》
  • 《React》
  • 《TypeScript 从零实现 axios》
  • TypeScript
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • apple music
  • extension
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Simonzhangs

前端学习探索者
首页
  • 前端文章

    • HTML
    • CSS
    • JavaScript
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • JS设计模式总结
  • 《Vue》
  • 《React》
  • 《TypeScript 从零实现 axios》
  • TypeScript
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • apple music
  • extension
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 前端工程化

  • 性能优化

    • prefetch和preload区别
    • 如何压缩前端项目中JS的体积
    • 如何提高首屏渲染时间
    • 网站性能优化中,如何对小图片进行优化
  • Webpack

  • 《综合性面试问题》
  • 性能优化
simonzhangs
2022-03-29

如何压缩前端项目中JS的体积

在前端项目部署时,JS 文件体积会影响页面加载速度,因为有必要对JS 体积进行压缩。

  1. 通过Nigix配置,开启gzip压缩,从而减小网络传输中JS体积,并在浏览器端进行对应解压,相当于是矛盾转移,将网络传输请求尽可能减小,让浏览器端承担部分压力;
  2. 使用webpack插件compression-webpack-plugin,在部署到服务器端之前就将JS文件gzip压缩,原理和1类似;
  3. 使用webpack-bundle-analyzer分析打包体积,替换占用较大体积的库,如moment -> dayjs;
  4. 使用支持Tree-shaking的库,对无引用的库或函数进行删除,如loadsh -> loadsh/es;
  5. 对于无法Tree-shaking的库,按需引入模块;
编辑 (opens new window)
上次更新: 2022/03/31, 14:55:48
prefetch和preload区别
如何提高首屏渲染时间

← prefetch和preload区别 如何提高首屏渲染时间→

最近更新
01
一些有意思的类比
06-16
02
the-super-tiny-compiler解析
06-06
03
计算机编译原理总概
06-06
更多文章>
Theme by Vdoing | Copyright © 2021-2022
蜀ICP备2021023197号-2
Simonzhans | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
  • 飙升榜
  • 新歌榜
  • 云音乐民谣榜
  • 美国Billboard榜
  • UK排行榜周榜