2026-10-29 17:31:58
JavaScript中的Tree Shaking(树摇)是一种通过静态分析移除未使用代码的优化技术,其核心目的是减少最终打包文件的体积,提升应用加载性能。以下是关键要点:
1. 核心作用
2. 工作原理
工具会标记所有导出项,并追踪哪些被实际使用。
未被使用的导出(如示例中的factorial和multiply)会被标记为“死代码”,在打包时移除。
3. 配置与使用
Webpack:需设置mode: 'production'并启用optimization.usedExports: true。
Rollup:内置支持,需确保使用ES6模块语法。
必须使用import/export,避免混合require()。
确保模块导出为具名函数(如export function sum()),而非动态属性。
4. 适用场景
5. 示例解析
在提供的代码中,index.js仅使用了sum(),但导入了factorial和multiply。通过Tree Shaking,最终打包文件会排除未使用的函数,仅保留sum及其依赖。
总结:Tree Shaking通过静态分析优化代码,是现代前端工程化的重要实践,尤其适合基于ES6模块的项目。正确配置打包工具并遵循模块化规范,可显著提升应用性能。