当使用具有高级优化的Closure编译器时,如何在javascript中保留全局变量?

Fro*_*dik 5 javascript obfuscation minify google-closure-compiler

我有自己的Javascript库,我想通过使用带有高级优化的Google闭包编译器来缩小它.通过查看文档,我看到如何声明在库外部使用的函数.

但是我找不到如何保存我的库中声明的全局变量的方法.Closure编译器只是删除它们,因为它认为它们从未被使用过.有人可以帮忙吗?

编辑:示例代码:

var variable_1 = true;
Run Code Online (Sandbox Code Playgroud)

这是在我的库的开头全局定义的,但它从未在库本身中使用过.当它包含在某个页面中时,它在库外使用.但Closure编译器不知道,这就是它删除这些声明的原因.

Ray*_*nos 7

闭包编译器无法删除声明为的全局变量 window["variable_1"] = true

我建议您window直接写入全局变量,我还建议您使用字符串文字作为变量名,以便闭包不会缩小它.