JavaScript 压缩工具

即时为生产环境压缩 JavaScript

原始 JavaScript

选项

压缩后的 JavaScript

概述

JavaScript 压缩工具会从你的代码中删除注释、不必要的空白和换行,以减小生产环境的文件体积——更小的下载量、更快的解析速度。粘贴可读的 JS,立即获得紧凑的输出,并提供实时的前后体积对比。

此压缩工具可控制的内容
  • 注释移除:删除 // 行注释和 /* 块 */ 注释
  • 空白折叠:删除不必要的空格、空行和换行
  • 体积对比:并排查看原始体积、压缩后体积和百分比缩减
  • 分号规范化:确保语句分隔符在删除空白后仍然存在
  • 保留注释开关:需要时保留许可证声明或重要注释
  • 可下载输出:直接将压缩结果保存为 .js 文件
何时需要压缩 JavaScript
  • 在部署到生产环境前压缩脚本以减少页面加载时间
  • 准备一个小型工具脚本以内联嵌入 HTML 页面而不使其臃肿
  • 在建立完整构建流程之前快速检查文件能缩小多少
  • 为 CodePen、gist 或书签工具压缩一次性脚本,这些场景中构建步骤并不实际
  • 在性能审计中将压缩后的体积与体积预算进行比较
如何压缩 JavaScript
  1. 1.将 JavaScript 粘贴到输入编辑器,或上传 .js 文件
  2. 2.决定是保留注释(例如许可证声明)还是完全删除
  3. 3.压缩后的输出和体积缩减百分比会自动显示
  4. 4.复制输出或下载为 .js 文件
  5. 5.在部署前检查前后字节数以确认体积节省
需要了解的边界情况
  • 此压缩工具不会将变量重命名为更短的名称,也不会执行死代码消除——要实现最大压缩,需要像 Terser 这样基于 AST 的工具
  • 字符串内容和模板字面量保持不变;只删除字符串之外的结构性空白和注释
  • 在不常见的代码中(例如以 ( 或 [ 开头的行),ASI(自动分号插入)的边界情况应在压缩后进行测试,因为删除换行有时会改变 ASI 相关的行为
限制
  • 这是空白/注释压缩,而非完整压缩——要实现最大体积缩减(变量重命名、死代码消除、tree-shaking),请使用集成于构建工具的压缩工具,如 Terser 或 esbuild
  • 压缩后的输出会失去全部可读性——请始终将原始源代码保留在版本控制之下
  • 非常大的文件在浏览器中完全处理可能较慢——对于生产构建流程,请将压缩集成到你的打包工具中,而不是使用一次性的浏览器工具
需要反向操作吗?

如果你有压缩过的 JavaScript 需要阅读或调试,请改用 JavaScript 美化工具。它会恢复缩进、换行和一致的格式,使代码真正可读。