eval无法通过google closure compiler的问题
在用google closure compiler编译JS文件时发现eval无法通过,有谁知道怎么解决这个问题啊?
下面为要用closure compiler编译的测试JS代码,详细见资源文件。
(function(){ var Effects = window.Effects = function(){ var transTotal = 10; this.transition = function (maskID, maskTime){ if (maskID <= transTotal) { var maskFunName = "mask" + maskID; eval(maskFunName)(maskTime); //这里因为使用了eval方法所以造成无法通过google closure compiler编译,如何才能使编译正常通过? } else { mask1(maskTime); } } function mask1(maskTime) { alert("mask1: " + maskTime); } function mask2(maskTime) { alert("mask2: " + maskTime); } function mask3(maskTime) { alert("mask3: " + maskTime); } /* . . . ...下面还有很多mask函数. */ };})();var masker = new Effects();masker.transition(3, 2);masker.transition(30, 8);