
Best JavaScript compressor什么是最好的JavaScript压缩器? 我正在寻找一种工具:
我最近发布了UglifyJS,这是一个用JavaScript编写的JavaScript压缩器(可在NodeJS Node.js平台上运行,但可以轻松修改为在任何JavaScript引擎上运行,因为它不需要任何 除了去除空格之外,UglifyJS还执行以下操作:
PS:哦,它也可以"美化"。 ;-) 几年后,UglifyJS再次回顾这个问题,似乎是目前最好的选择。 如下所述,它可以在NodeJS平台上运行,但是可以轻松地修改为在任何JavaScript引擎上运行。 ---下面的旧答案--- 谷歌发布了Closure Compiler,它似乎正在生成最小的文件。 在此之前,各种选项如下 基本上,Packer在初始压缩时做得更好,但是如果要在在线发送之前对文件进行gzip压缩(您应该这样做),YUI Compressor的最终大小会最小。 测试是在jQuery代码btw上完成的。
@daniel james在注释Compressorrater中提到,它显示Packer在最佳压缩率方面领先于图表,因此我猜是ymmv YUI Compressor是必经之路。它具有很高的压缩率,经过了良好的测试,并在许多顶级站点中得到使用,并且,我个人建议这样做。 我已经将它用于我的项目,而没有一个JavaScript错误或打h。而且它有很好的文档。
注意:尽管Dean Edwards的/ packer /的压缩率比YUI Compressor更好,但是在使用它时遇到了一些JavaScript错误。 我在Dojo项目中使用ShrinkSafe-这是个例外,因为它实际上使用JavaScript解释器(Rhino)来处理代码中的符号并了解其范围等,这有助于确保代码在出现时能正常工作。另一端,与许多使用regex进行压缩的压缩工具相反(不那么可靠)。 实际上,在我当前的Visual Studio解决方案的Web部署项目中,我实际上有一个MSBuild任务,该任务运行一个脚本,该脚本又会在部署之前通过ShrinkSafe运行该解决方案的所有JS文件,并且效果很好。 编辑:顺便说一下,"最佳"是有争议的,因为"最佳"的标准将根据项目的需求而变化。就个人而言,我认为ShrinkSafe是一个很好的平衡点。对于某些认为最小尺寸==最佳的人来说,这将是不够的。 编辑:值得注意的是,YUI压缩器也使用Rhino。 尝试JSMin,获得C#,Java,C和其他端口,并且也很容易获得。 如果您使用Packer,则只需选择"缩小变量"选项并gzip压缩结果代码即可。仅当服务器无法发送压缩文件时,base62选项才适用。带有"收缩变量"的Packer可以更好地压缩YUI,但是如果您在某处跳过了分号,则可能会引入错误。 base62基本上是一个穷人的gzip,这就是为什么gzip压缩base62版本的代码比gzip缩小收缩代码的代码能为您提供更大的文件。 JSMin是另一个。
精简后,Js Crush是一个很好的压缩器。 KJS压缩 http://opensource.seznam.cz/KJScompress/index.html
bananascript.com曾经给我最好的结果。 这是一个YUI压缩器脚本(Byuic),该脚本查找所有js并沿着路径移动css并压缩/(可选)对它们进行模糊处理。很高兴集成到构建过程中。 这是执行此操作的HttpHandler的源代码,也许会对您有所帮助 |