在不使用Function构造函数的情况下努力替换eval。难住了。我不是新手,也不是专家。
jslint说这是邪恶的;当我用Function构造函数替换它时,它说这只是eval()的一种形式!
evaluateEventScript: function(requestObject) {
var resultData;
resultData = eval(requestObject.script);
//send resultData elsewhere...
}
帮助??
答案 0 :(得分:3)
你不能简单地在场景中传递一个函数对象吗? e.g
var c = function(){
...
}
var evaluateEventScript = function(requestObject) {
var resultData;
resultData = requestObject();
//send resultData elsewhere...
}
evaluateEventScript(c);
或者这种形式的东西?这可以在没有eval或Function构造函数的情况下工作。但它要求requestObject是一个函数对象,而不是一个String。