js动态调用方法
js动态调用方法
//回调函数1 function callback(a,b,c) { alert(a+b+c); } //回调函数2 function callback2(a,b) { alert(a+b); } //这个方法做了一些操作、然后调用回调函数 function doCallback(fn,args) { fn.apply(this, args); } function test() { //动态调用方法、并传递参数 doCallback(callback2,['a','b']); doCallback(callback,['a','b','c']); }
注意一点的就是上面 callback2 之类的不能是字符串的哦.
亲如果你想根据字符串来实现动态调用怎么办呢?
请看下面代码
//回调函数1 function callback(a,b,c) { alert(a+b+c); } //回调函数2 function callback2(a,b) { alert(a+b); } //这个方法做了一些操作、然后调用回调函数 function doCallback(fn,args) { fn.apply(this, args); } function test() { //动态调用方法、并传递参数 doCallback(eval("callback2"),['a','b']); doCallback(callback,['a','b','c']); }
使用 eval("callback2")就好了哦, 亲 是不是很简单~