Js中concat和push的區別

概述

concat和push均可以向數組後面追加數據,它們有啥異同呢,今天來對比一下。 測試代碼地址:github.com/fanxuewen/e…git

1、 concat

var sourceArr1=[1,2,3,4];
var sourceArr2=[5,6,7,8];
console.log('--------------concat 數組-----------');
console.log('result',sourceArr1.concat(sourceArr2));
console.log('sourceArr1',sourceArr1);
console.log('sourceArr2',sourceArr2);
console.log('--------------concat 參數列表-----------');
console.log('result',sourceArr1.concat(...sourceArr2));
console.log('sourceArr1',sourceArr1);
console.log('sourceArr2',sourceArr2);
複製代碼

結果: concat的做用是在原數組後追加,參數既能夠是數組也能夠是參數列表,參數如果數組 自動展開(但只會展開一層),返回一個新的數組,對原數組沒有影響

1、 push

var pushArr1=[1,2,3,4];
var pushArr2=[5,6,7,8];
console.log('--------------push 數組-----------');
console.log('result',pushArr1.push(pushArr2));
console.log('pushArr1',pushArr1);
console.log('pushArr2',pushArr2);
// console.log('--------------push 參數列表-----------');
// console.log('result',pushArr1.push(...pushArr2));
// console.log('pushArr1',pushArr1);
// console.log('pushArr2',pushArr2);
複製代碼

結果: push的做用也是在第一個數組後追加,參數既能夠是數組也能夠是參數列表,參數如果數組 會自動展開,會修改第一個數組,不會修改第二個數組,返回值爲第一個數組修改後的長度。
相關文章
相關標籤/搜索