跳到正文
SPCXTools

JavaScript 压缩工具

使用 Terser 压缩 JavaScript 代码 — 体积更小,功能不变。

本地运行——文件不会离开你的设备

正在加载工具…

如何使用JavaScript 压缩工具

  1. 1将 JavaScript 代码粘贴到 输入 框中,或点击 示例。
  2. 2压缩后的代码会自动显示在右侧。
  3. 3选择是否 缩短变量名 以及 保留许可证注释。
  4. 4复制结果或将其下载为 minified.js。

压缩 JavaScript 代码

JavaScript 通常是网页中最庞大的部分,在页面变得可交互之前,每一个字节都需要被下载、解析和执行。压缩代码可以将其体积减半甚至更多。本工具使用 Terser(大多数现代构建工具背后的压缩引擎),直接在您的浏览器中移除空格和注释、缩短变量名并进行安全的代码压缩。

功能特点

  • Terser 引擎:支持现代 ES2015+ 语法。
  • 代码压缩:移除无用代码、常量折叠及简化语法。
  • 变量名混淆:缩短局部变量名(可选)。
  • 许可注释:可按需保留。
  • 体积对比:显示字节数和百分比的压缩效果对比。
  • 隐私安全:代码完全在本地处理。

典型压缩效果

代码类型 常见缩减比例
注释丰富的应用代码 50–70%
库源码 40–60%
已经过精简的代码 15–30%
已压缩过的代码 0–5%

在服务器端结合 gzip 或 Brotli 压缩这些已精简的文件,通常还能进一步减少 60–75% 的传输体积。

实用技巧

  • 保留原始源码 —— 压缩后的代码很难阅读和调试。在构建过程中使用 source map 以便调试生产环境代码。
  • 在构建阶段压缩生产环境代码;本工具非常适合处理一次性脚本、代码片段、书签脚本以及没有使用打包工具的项目。
  • 压缩后进行测试,特别是依赖函数名或 eval 的代码。

相关工具

使用 CSS 压缩工具 压缩样式表,使用 JSON 格式化工具 格式化数据,或使用 Base64 编码脚本以便嵌入。

常见问题

JavaScript 压缩工具有什么用?
它会删除空格和注释,缩短局部变量和函数名(变量混淆),并将代码重写为更短的等效形式——例如删除无法执行的代码和简化表达式——且不会改变代码的实际功能。
支持哪些 JavaScript 语法?
Terser 支持现代 JavaScript(ES2015 及以上版本),包括箭头函数、类、模块、async/await 和可选链。TypeScript 和 JSX 需要先编译为 JavaScript。
缩短变量名安全吗?
Terser 仅重命名局部变量和函数,绝不会修改全局变量名或对象属性,因此代码可以正常运行。如果你的代码在运行时依赖函数名(例如 fn.name),请关闭名称缩短功能。
为什么会提示语法错误?
压缩工具必须先解析你的代码。报错通常意味着缺少括号或引号,或者包含了非 JavaScript 语法(如 TypeScript 类型注解或 JSX)。错误提示会说明具体原因。
我的代码会被上传吗?
不会。Terser 完全在你的浏览器中运行,因此你的专有代码绝不会离开你的设备。