什么是最好的JavaScript压缩工具?我正在寻找一个具有以下特点的工具:
- 易于使用
- 具有高压缩率
- 可以产生可靠的最终结果(不会弄乱代码)
什么是最好的JavaScript压缩工具?我正在寻找一个具有以下特点的工具:
Node.js
内部)。它比 YUI Compressor 和 Google Closure 都要快得多,在我测试的所有脚本中,它的压缩效果都比 YUI 更好,并且比 Closure 更安全(知道如何处理 "eval" 或 "with")。foo["bar"]
转换为foo.bar
PS:哦,它也可以“美化”。;-)
几年后重新审视这个问题,UglifyJS 看起来是目前最好的选择。
如下所述,它运行在 NodeJS 平台上,但可以轻松修改以在任何 JavaScript 引擎上运行。
--- 以下是旧答案 ---
谷歌发布了 Closure Compiler,似乎生成的文件迄今为止是最小的,如 here 和 here 所示。
在此之前,各种选项 were as follow 。
基本上,Packer 在初始压缩方面做得更好,但如果您在发送到网络时会使用 gzip 压缩文件(您应该这样做),则 YUI Compressor 可以获得最小的最终大小。
测试是在 jQuery 代码上进行的。
@daniel james评论中提到了compressorrater,它显示Packer压缩在最佳压缩方面处于领先地位,所以我想你的结果可能会有所不同。
\uxxxx
字面量。如果您确定已经让浏览器知道,请使用例如--charset UTF-8
。 - mykhalYUI Compressor 是不错的选择,它具有很高的压缩率,在许多顶尖网站中得到了广泛应用,也是我个人推荐的。
我在自己的项目中使用过它,没有出现任何 JavaScript 错误或问题,并且它有良好的文档。
虽然我从未使用过它的 CSS 压缩功能,但它同样有效。 CSS 压缩也同样有效。
注意:虽然 Dean Edwards 的 /packer/ 能够比 YUI Compressor 达到更高的压缩率,但我使用它时遇到了一些 JavaScript 错误。
npm install packer
。 - Aadit M Shah编辑:需要注意的是,YUI压缩器也使用了Rhino。
KJS压缩器
Kjscompress/csskompress是一组包含kjscompress和csscompress两个应用程序的工具,用于从包含JavaScript和CSS的文件中删除非重要的空格和注释。它们都是GNU/Linux操作系统的命令行应用程序。