如果你不知道我在说什么,请查看:http://closure-compiler.appspot.com/home(它是一个JavaScript缩小器)
在他们的网站上,他们说明了以下内容:
Closure Compiler将JavaScript编译成紧凑的, 高性能代码。编译器删除死代码并重写和 最小化剩下的内容,以便下载并快速运行。它也是 检查语法,变量引用和类型,并警告常见 JavaScript陷阱。这些检查和优化可以帮助您编写 不那么错误且易于维护的应用程序。
但有人可以真正详细解释这个Closure Compiler对我的代码做了什么吗?
答案 0 :(得分:2)
Closure编译器将编译您的代码,并为您的代码执行标准优化技术。
从表面上看,生成的代码可能有也可能不具有相似性,但通常完全相同。
答案 1 :(得分:1)
https://developers.google.com/closure/compiler/docs/compilation_levels
ADVANCED_OPTIMIZATIONS转换包括:
更积极的重命名:
使用SIMPLE_OPTIMIZATIONS进行编译仅重命名函数内的参数和变量。 ADVANCED_OPTIMIZATIONS还重命名全局变量,函数名称和属性。死码删除:
使用ADVANCED_OPTIMIZATIONS进行编译会删除可证明无法访问的代码。这与大型库结合使用时尤其有用。如果只使用大型库文件中的一些函数,编译器可以从输出中删除除这些函数之外的所有函数。全球内联:
使用ADVANCED_OPTIMIZATIONS进行编译会将某些函数调用替换为函数体。这种转变被称为“内联”。编译器仅在确定内联是安全的并节省空间时才内联函数。当编译器确定它可以安全地进行编译时,使用ADVANCED_OPTIMIZATIONS进行编译也会内联常量和一些变量。