数组合并去重的方法,请你告诉我合并两个数组,你有多少种方法!
数组合并
作者: 前端科技
2018-05-02 11:14:14
59.2K
[ 闻蜂导读 ] 合并两个数组是一个很简单的需求,但是很多人只知道concat方式。今天我帮大家总结一下合并数组的常见方式。

01

常见的方法

1.concat

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

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

2.for循环push添加

let arr1 = [1,2];let arr2 = [3,4];arr2.forEach(x=>arr1.push(x));console.log(arr1);

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

let arr1 = [1,2];let arr2 = [3,4];for (let i =0; i<arr2.length;i++){ arr1.push(arr2[i])}console.log(arr1);

结果都是一样的,对ES6不了解的同学可以参考小专栏ES6小册子。

02

不太常见的方法

1.map

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

let arr1 = [1,2];let arr2 = [3,4];arr2.map(x=>arr1.push(x));console.log(arr1);

既然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);

2.扩展运算符

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

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

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

相关文章

  • 验证码: 看不清?点击更换 看不清? 点击更换
  • 意见反馈
    意见反馈
    返回顶部