大前端时代

请你告诉我合并两个数组,你有多少种方法

2018-04-19  本文已影响3人  魏永_Owen_Wei

合并两个数组是一个很简单的需求,但是很多人只知道concat方式。今天我帮大家总结一下合并数组的常见方式。

01

常见的方法

1.concat

这是每一个JavaScript入门程序员都知道的方法,使用方式如下:

let arr1 = [1,2];
let arr2 = [3,4];
console.log(arr1.concat(arr2));
image.png

1.for循环push添加

let arr1 = [1,2];
let arr2 = [3,4];

arr2.forEach(x=>arr1.push(x));
console.log(arr1);
image.png

一些刚接触JavaScript的同学可能会写成这种循环:

let arr1 = [1,2];
let arr2 = [3,4];

for (let i =0; i<arr2.length;i++){
  arr1.push(arr2[i])
}
console.log(arr1);
image.png
结果都是一样的,对ES6不了解的同学可以参考小专栏ES6小册子

02

不太常见的方法

1.map

map方法在这里其实只是起到了遍历数组的作用。

let arr1 = [1,2];
let arr2 = [3,4];

arr2.map(x=>arr1.push(x));
console.log(arr1);
image.png

既然map只是起到了遍历数组的作用,那么其他能做到遍历数组的方法例如every,filter也是可以的。

let arr1 = [1,2];
let arr2 = [3,4];

arr2.every(x=>arr1.push(x));
arr2.filter(x=>arr1.push(x));
console.log(arr1);
image.png

2.扩展运算符

扩展运算符是ES6的新功能,它的作用是把对象或数组的元素展开。这也给合并数组提供了一个及其简便的范式。

let arr1 = [1,2];
let arr2 = [3,4];
arr1 = [...arr1,...arr2]
console.log(arr1);
image.png

有其他方式,欢迎你给我留言。

上一篇下一篇

猜你喜欢

热点阅读