在线免费JavaScript压缩器
压缩JavaScript代码以减小体积并提高加载速度。
Note: Basic minification — removes comments and excess whitespace.
Who uses the JavaScript压缩器?
- 为一个小脚本快速获取压缩前后体积对比的开发者。
- 在没有构建流水线的情况下,为遗留独立脚本做粗略体积压缩的 Web 开发者。
- 希望在把 JS 片段粘贴到体积受限的地方之前,先去掉注释和空白的任何人。
How the JavaScript压缩器 works
把你的 JavaScript 代码粘贴到输入编辑器中。
点击 Minify,通过去除注释和多余空白来压缩代码。
在统计面板中查看以字节和百分比表示的体积缩减。
复制压缩后的输出用于生产环境。
Tips & tricks
- 这是一个基于正则表达式的压缩工具,而不是真正的 JavaScript 解析器——发布前请务必对比或测试输出结果。
- 包含 //(如网址)的字符串存在已知风险:去除注释的正则表达式无法区分真正的注释和字符串字面量中的 //。
- 对于生产构建,集成在打包工具中的真正压缩器(Terser、esbuild、SWC)更安全,还能进行变量重命名和无用代码消除,而本工具做不到这些。
- 本工具最适合用于快速的一次性体积检查,或压缩一个独立的小脚本,而不是完整的生产流水线。
Frequently Asked Questions
压缩能减少多少 JavaScript 文件体积?
典型的压缩能减少 20%–50% 的文件体积。再加上大多数服务器都会应用的 gzip 压缩,相比原始未压缩、未精简的代码,实际减少幅度通常能达到 70%–90%。
这个工具会重命名或缩短变量名吗?
不会——本工具只去除注释并压缩空白;它不会重命名变量(即不做变量名混淆)。安全地进行变量重命名需要把代码解析成 AST 来跟踪作用域,而这个基于文本的简单工具不会这样做。
压缩(minification)和混淆(obfuscation)有什么区别?
压缩是为了提升性能而减小体积。混淆则是故意让代码难以理解(比如把变量重命名为 a、b、c;对字符串进行编码)。本工具只去除空白和注释——如需故意混淆,请使用专门的混淆工具。
我应该用它来压缩第三方库吗?
不建议。像 React、Lodash 等库都会从官方包中提供已经压缩好的 .min.js 文件。只压缩你自己的代码即可。
用这个工具压缩有风险吗?
有一定风险——它是通过正则表达式而不是真正的 JS 解析器来去除 // 和 /* */ 这类模式的,因此如果字符串或模板字面量中恰好包含 //(比如网址 "http://example.com"),可能会被误判为注释并遭到破坏。请检查输出结果,或者对于要上生产环境的代码,使用 Terser/UglifyJS 这类真正的工具。
Is my data safe when using the JavaScript压缩器?
Completely safe. The JavaScript压缩器 processes everything locally in your browser. No input data, results, or usage information is ever transmitted to or stored on any server.
Can I use the JavaScript压缩器 output in commercial projects?
Yes. The JavaScript压缩器 is a utility tool and its output carries no licensing restrictions. You are free to use results in any project, commercial or personal.
Does the JavaScript压缩器 follow official standards?
Yes. The JavaScript压缩器 is built to comply with the relevant industry standard or specification for this utility type. If you encounter an unexpected result, verify your input against the specification — edge cases outside the standard may produce undefined behaviour.