使用稍后确定的参数调用JavaScript函数
我想存储一个指向函数的指针,然后稍后用一些参数调用它,但在如何将参数传递给函数方面遇到了问题 例如:使用稍后确定的参数调用JavaScript函数,javascript,Javascript,我想存储一个指向函数的指针,然后稍后用一些参数调用它,但在如何将参数传递给函数方面遇到了问题 例如: var MyObject = (function () { return { myMethod: function (a, b) { return a + b; } }; }()); var method = MyObject.myMethod; var args = [2, 5]; method(args); 在最后
var MyObject = (function () {
return {
myMethod: function (a, b) {
return a + b;
}
};
}());
var method = MyObject.myMethod;
var args = [2, 5];
method(args);
在最后一行中,我知道methodargs不能实现我想要的功能,我想本质上调用MyObject.myMethod2,5,所以我的数组尝试失败了,创建一个对象也失败了。如何将存储的参数传递给存储方法?您可以使用接受参数数组作为参数的
var myarray = [2,5,...] //your array of arguments
method.apply(this,myarray); //execute your method
在您拥有的方法中,您可以通过隐藏的伪数组参数接收参数
function method(){
var args = arguments; //is [2,5,...]
}
这比其他方法有优势,因为您可以预构建参数数组,并且不必在调用的K中枚举参数。Scott Allen有一篇关于这类事情的很好的老文章。使用call或apply作为在被调用函数中影响此值的方法
明亮的非常感谢。谢谢你的正确答案。约瑟夫刚刚把你推到了岗位上。