javascript中深度函数eval()的替代方法
可能重复:javascript中深度函数eval()的替代方法,javascript,eval,Javascript,Eval,可能重复: 我正在尝试寻找eval()的替代方案。我使用它从字符串调用函数 我知道window[“myFunction”](args),但我的函数在另一个对象中 例如,它可以是“myObject.anotherOne.myFunction”或“myObject.myFunction”或任何类型的深函数 有人有想法吗?直接传递函数,而不是传递函数名和使用eval var toCall = function () { console.log("toCall was called"); };
我正在尝试寻找
eval()
的替代方案。我使用它从字符串调用函数
我知道window[“myFunction”](args)
,但我的函数在另一个对象中
例如,它可以是“myObject.anotherOne.myFunction”
或“myObject.myFunction”
或任何类型的深函数
有人有想法吗?直接传递函数,而不是传递函数名和使用eval
var toCall = function () {
console.log("toCall was called");
};
// Call via eval
var evalSample = function (theName) {
...
eval(theName);
}
evalSample('toCall');
// Call via callback
var funcSample = function (theFunc) {
...
theFunc();
};
funcSample(toCall);
与其传递函数名并使用eval,不如直接传递函数
var toCall = function () {
console.log("toCall was called");
};
// Call via eval
var evalSample = function (theName) {
...
eval(theName);
}
evalSample('toCall');
// Call via callback
var funcSample = function (theFunc) {
...
theFunc();
};
funcSample(toCall);
不确定你在这里找什么。。。
eval()
做错了什么?你想干什么?这不是复制品。链接副本是关于对象值的,我需要调用一个函数。事实上,它给了我实现目标的想法,但我还没有完成。我真的不确定你在这里寻找什么。。。eval()
做错了什么?你想干什么?这不是复制品。链接副本是关于对象值的,我需要调用一个函数。事实上,它给了我实现目标的想法,但我还没有完成。在我的例子中,函数名不是一个选项。这就是我的全部。在我的例子中,传递函数名不是一个选项。我只有这些了。