2011-11-24 92 views
2

有没有一种方法可以在不改变功能的情况下做到这一点?带参数数组的呼叫功能

function foo(bar1, bar2, bar3) 
{ 
    return bar1 + bar2 + bar3; 
} 
var array = [1, 2, 3]; 
console.log(foo(array)); //6 
+3

'FOO(阵列[0],阵列[1],阵列[2]);'? –

回答

11
console.log(foo.apply(null, array)); 
+0

演示:http://jsfiddle.net/nTeUG/ –

+0

我认为将'this'值设置为函数本身不太合理。虽然它没有什么区别,但我会说把它设置为例如'null'更具语义。 – pimvdb

+0

演示更新:http://jsfiddle.net/nTeUG/1/ –