3

根据官方发布声明, 1.4 版已被重新编写以使用 Closure Compiler 进行压缩,但当我使用 Closure Compiler 的在线版本时,收到 130 条警告。

这是我使用的代码。

// ==ClosureCompiler==
// @compilation_level ADVANCED_OPTIMIZATIONS
// @output_file_name default.js
// @code_url http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js
// ==/ClosureCompiler==

据我所知,如果您在代码中也包含该库,您将获得 Closure Compiler 的真正好处,因此它会删除未使用的函数。然而我的测试表明,除了压缩库本身之外,我别无他法。

我究竟做错了什么?任何形式的见解将不胜感激。

4

2 回答 2

10

jQuery 1.4 与 Closure Compiler 兼容,但仅与SIMPLE_OPTIMIZATIONS设置兼容。jQuery官方缩小版其实就是用这个设置编译的,这样文件大小减少了13% 。引用 John Resig 的此提交评论

从使用 YUI Compressor 切换到 Google Compiler。缩小和 Gzip 文件大小从 26,169 字节减少到 22,839 字节(文件大小减少 13%)。

于 2010-04-04T10:48:15.837 回答
2

jQuery 与高级模式下的 Closure Compiler 不兼容(目前)。我同意让它兼容是一件非常好的事情,因为它的方法链语法非常容易用于原型虚拟化,从而大大提高了执行速度。

事实上,在流行的 JavaScript 库中(即 Closure 库除外),只有 Dojo Toolkit 兼容 Closure Advanced 模式。

http://dojo-toolkit.33424.n3.nabble.com/file/n2636749/Using_the_Dojo_Toolkit_with_the_Closure_Compiler.pdf?by-user=t

于 2011-03-09T03:52:46.877 回答