我試圖在javascript中使用concat()
方法來連接兩個數組。我不知道是什麼這兩種情況使用調用方法的javascript concat
var a = [1, 2, 3];
console.log(Array.prototype.concat.call(a, [4, 5, 6]));
// Result: [1, 2, 3, 4, 5, 6]
console.log(Array.prototype.concat(a, [4, 5, 6]));
// Result: [1, 2, 3, 4, 5, 6]
我想用call
方法,因爲我們傳遞this
對象作爲第一個參數之間的差異,這將改變陣列a
。但事實並非如此。
'concat'不會改變任何東西,它會返回一個新的數組。不知道你想要做什麼。 – Bergi
@Bergi感謝您的回覆..在他們使用call()的mozilla文檔中使用concat。我試圖瞭解什麼是call()這裏的用例。當你可以在沒有調用的情況下實現同樣的事情() –
你引用了哪一個Mozilla文檔?請鏈接它。當'a'不是一個數組並且本身沒有'concat'方法時,'call'通常是必需的。 – Bergi