【发布时间】:2016-01-08 01:13:16
【问题描述】:
我有以下代码:
// ==ClosureCompiler==
// @output_file_name default.js
// @compilation_level ADVANCED_OPTIMIZATIONS
// ==/ClosureCompiler==
var l = window.location;
var s = 'hash';
l[s] = 'whatever i need now';
使用谷歌闭包编译器(高级模式)编译如下:
window.location.hash="whatever i need now";
但在这种情况下,我真的需要它在编译后的代码中继续使用l[s]= ...。
有没有办法告诉编译器继续使用 var 或忽略几行?
【问题讨论】:
-
我很好奇你为什么需要它。如果用在别处,应该保留,不是吗?
-
为什么您需要保留
l[s]=部分?如果我们知道原因,我们或许可以提供帮助。 -
@yeouuu:嗯?您将不得不解释(可能带有引用),您的原始代码和 CC 的输出完全做同样的事情。 (另外:
hash不是一个函数,它是一个属性。)不,这不是无关紧要的。 -
优化其余代码,将这三行保存在不同的文件中,然后将两者连接起来? .......我的想法已经用完了
-
高级模式肯定不是实验性的。它有着悠久的稳定历史。
标签: javascript google-closure-compiler