1. 程式人生 > >合併陣列,改變原陣列apply與不改變原陣列

合併陣列,改變原陣列apply與不改變原陣列

一看見合併陣列,可能第一反應就是concat,concat確實具有我們想要的行為,但它實際上並不附加到現有陣列,而是建立並返回一個新陣列。

同樣你也許會想到ES6的擴充套件運算子...         但它同樣也是新生成一個數組。

 

但是我們想要附加到我們現有的陣列,運用apply:

var array = ['a', 'b'];
var elements = [0, 1, 2];
array.push.apply(array, elements);
console.log(array); // ["a", "b", 0, 1, 2]

apply將this指向array。

 

concat():

var a = array.concat(elements);//原陣列不變

擴充套件運算子...:

var b = [...array,...elements];//原陣列不變