JavaScript 压缩工具

用 Terser 压缩 JavaScript:删除空白和注释、缩短局部变量名,并应用安全的压缩优化。在浏览器中运行。

输出

完全在浏览器中运行,您的数据不会被上传。

相关工具

查看全部

什么是 JavaScript 压缩?

JavaScript 压缩工具使用 Terser(webpack 和 Vite 采用的压缩器)来压缩现代 JavaScript(ES2015+)。它会删除空白和注释,把局部变量重命名为短名称,并简化表达式。

如何使用 JavaScript 压缩

  1. 把 JavaScript 粘贴到输入框中。
  2. 点击 压缩(输入时输出也会更新)。
  3. 查看输出下方的体积行。
  4. 复制或下载压缩后的代码。

示例

输入
function add(first, second) {
  return first + second;
}
console.log(add(1, 2));
输出
function add(d,n){return d+n}console.log(add(1,2));

何时使用 JavaScript 压缩

适合小脚本、书签脚本、内联的 <script> 代码块或快速查看体积。对于应用程序,请让打包工具压缩并生成 source map。它不会转译 TypeScript 或 JSX,请先去掉类型。

JavaScript 压缩 的工作原理

代码使用 terser.minify 压缩,启用 compress 和 mangle,并删除所有注释。Terser 把代码解析为 AST,内联常量,删除局部作用域中的死代码和未使用的变量,并重命名函数内部的标识符。顶层名称不会被混淆,所以全局函数保持原名。语法错误会连同行号和列号一起报告。

常见用例

  • 压缩静态网站使用的独立脚本
  • 制作精简的书签脚本
  • 查看某个库函数能压缩到多小
  • 嵌入代码前先删除注释

安全提示

所有处理都在你的浏览器本地完成,粘贴的代码不会被上传。

常见问题

为什么我的顶层变量名没有被缩短?

顶层名称可能被其他脚本使用,所以 Terser 默认会保留它们。

支持 TypeScript 或 JSX 吗?

不支持,输入必须是纯 JavaScript。

会生成 source map 吗?

不会;需要 source map 时请使用你的构建工具。

推荐的下一步

探索更多分类