开发者工具 / 17
JavaScript压缩工具
谨慎移除注释、缩进和空行,不重命名标识符。
JavaScript压缩工具: TOEA会扫描字符串、模板字面量和正则表达式字面量,移除它们之外的行注释和块注释,清除模板字面量之外的缩进,并保留行边界,以更安全地处理自动插入分号的行为。 完全在浏览器中本地运行,文件不会上传到服务器。
- 类别
- 开发者工具
- 使用次数
- 在浏览器中
- 费用
- 免费·无需注册
- 可用性
- 可直接使用
完全在浏览器中运行
哪些内容会原样复制
字符串、模板字面量和正则表达式字面量都会完全复制,因此/https?:\/\//中的//不会被当作注释,跨行模板字面量中的缩进也会保留为字符串的一部分。当/位于运算符、开括号、逗号、分号、花括号或return、typeof等关键字之后时,它会开始一个正则表达式;位于名称、数字或闭括号之后时,则表示除法。这是通常的规则,只有少见的代码(例如if (ok) /x/.test(s))可能被误判。
换行会保留,空行会删除,因为自动分号插入依赖换行:如果将let a = b和(c || d).run()合并到同一行,就会把b当作函数调用。跨行块注释出于同样原因会留下一个换行。
何时使用构建工具
本页面只删除注释和缩进。Terser和esbuild等构建时压缩工具还会缩短局部变量名、删除不可达代码并生成源映射,通常能得到小得多的文件。应用程序包应使用这些工具;代码片段、嵌入代码或要粘贴到页面中的脚本则可以使用本工具。在差异检查工具中比较输入和输出,可以准确显示哪些行发生了变化。
使用方法
- 粘贴JavaScript代码。
- 选择“压缩JavaScript”。
- 测试、复制或下载输出结果。
隐私与限制
源代码会保留在本地。这款有意采用保守策略的压缩工具不是混淆工具;发布前请测试生成的代码。
相关工具
常见问题
为什么名称没有缩短?
工具有意省略了标识符改名,以减少代码片段和集成过程中出现意外问题。
为什么保留了部分换行?
保留行边界可以避免改变JavaScript自动插入分号的行为。
免费工具·使用在浏览器中次·无需账户