我們可以使用數(shù)組的push()方法來(lái)合并數(shù)組
var a = [1,2,3];
var b = [4,5,6];
Array.prototype.push.apply(a,b);
console.log(a);//輸出1,2,3,4,5,6
push方法本身沒有提供push一個(gè)數(shù)組,但它提供了push(param1,parm2...)仑乌,支持傳入多個(gè)參數(shù)。
而apply方法可以將一個(gè)數(shù)組轉(zhuǎn)換為一個(gè)參數(shù)列表,apply的第一個(gè)參數(shù)用于改變this對(duì)象下硕,將數(shù)組a傳給它玉工,也就相當(dāng)于在a上調(diào)用了push方法羽资。第二個(gè)參數(shù)是一個(gè)數(shù)組,它將作為參數(shù)傳給push()方法遵班。
ES6提供了一個(gè)展開運(yùn)算符(...)屠升,允許我們將數(shù)組展開成多個(gè)參數(shù)潮改。因此合并數(shù)組可以這樣寫:
a.push(...b)
此外,找出數(shù)組中的最大值腹暖、最小值也均可使用此方法汇在。
如求出數(shù)組中的最大值:
var a = [3,4,1,5,9];
var max = Math.max.apply(null,a);
console.log(max);//輸出9
ES6版
Math.max(...arr)