使用函数的apply方法:-
function mainfunc (func){ window[func].apply(null, Array.prototype.slice.call(arguments, 1));}编辑 :在我看来,这将是一个稍微的调整会更有用:
function mainfunc (func){ this[func].apply(this, Array.prototype.slice.call(arguments, 1));}这将在浏览器之外工作(
this默认为全局空间)。在mainfunc上使用call也可以:
function target(a) { alert(a)}var o = { suffix: " World", target: function(s) { alert(s + this.suffix); }};mainfunc("target", "Hello");mainfunc.call(o, "target", "Hello");


