2011-11-24 129 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/ –