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的做用也是在第一个数组后追加,参数既能够是数组也能够是参数列表,参数如果数组 会自动展开,会修改第一个数组,不会修改第二个数组,返回值为第一个数组修改后的长度。
相关文章
相关标签/搜索