JavaScript用四种方式实现两个数组的合并

  1. 循环遍历(本例只用forEach和for...of)
  2. 扩展运算符
  3. contact
  4. apply

push()的定义和用法:push() 方法可向数组的末尾添加一个或多个元素,并返回新的 【长度】。

var array1 = [1,2,3,4];

var array2 = ["apple","orange","banana","pear"];

描述:将两个已知数组array1和array2,合并成为一个新的数组。

目标:得到一个新的数组[1,2,3,4,"apple","orange","banana","pear"];

(注意:以下demo每部分的代码都是独立的,所有的array1和array2的值都是原始数据 )

 直接用push(不成功)

// 如果在输入后面添加一个元素,直接push就可以了,例如给array1追加一个5,

array1.push(5);

console.log(array1);//[ 1, 2, 3, 4, 5 ]

//如果要添加一个数组,直接push 得到的不是想要的结果

array1.push(array2)

console.log(array1);//[ 1, 2, 3, 4, [ 'apple', 'orange', 'banana', 'pear' ] ]

下面细说几种合并能合并成功的方式 。

1、循环合并

//循环合并
//forEach循环
array2.forEach(item=>{array1.push(item)
})
console.log(array1);//[ 1, 2, 3, 4, 'apple', 'orange', 'banana', 'pear' ]//for...of 循环for(var item of array2){array1.push(item);}console.log(array1);//[ 1, 2, 3, 4, 'apple', 'orange', 'banana', 'pear' ]

2、 用扩展运算符...来实现

//先看下...的使用规则console.log(array2);//[ 'apple', 'orange', 'banana', 'pear' ]
console.log(...array2);//apple orange banana pear//看push的定义,只能添加一个或者多个元素,所以我们可以把需要添加的数组用...展开array1.push(...array2)//实现代码console.log(array1.length)//8
console.log(array1)//[ 1, 2, 3, 4, 'apple', 'orange', 'banana', 'pear' ]

3、用contact

定义和用法:concat() 方法用于连接两个或多个数组。该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。

语法:arrayObject.concat(arrayX,arrayX,......,arrayX)

var array3 = array1.concat(array2);
console.log(array1);//[1,2,3,4]证明不会改变原数组
console.log(array3);//[ 1, 2, 3, 4, 'apple', 'orange', 'banana', 'pear' ]

4、apply

Array.prototype.push.apply(array1,array2);
console.log(array1)//[ 1, 2, 3, 4, 'apple', 'orange', 'banana', 'pear' ]

JavaScript数组合并的几种方式相关推荐

  1. PHP数组合并的几种方式

    1 "+": 直接将两个数组的值合并成为一个数组: $a = [1,2,3,'a'=>'a']; $b = ['a'=>'b',4,5,'b'=>'c',6,7, ...

  2. html中数组的定义,javascript中数组定义的几种方式是什么?

    javascript中怎么定义数组?下面本篇文章给大家介绍一下javascript数组定义的几种方法.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. 1.什么是数组 数组就是一组数据 ...

  3. JS数组遍历的几种方式

    JS数组遍历的几种方式 JS数组遍历,基本就是for,forin,foreach,forof,map等等一些方法,以下介绍几种本文分析用到的数组遍历方式以及进行性能分析对比 第一种:普通for循环 代 ...

  4. JavaScript 数组遍历的五种方法(转)

    转自:JavaScript 数组遍历的五种方法 这篇文章主要介绍了JavaScript 数组遍历的五种方法,帮助大家更好的理解和学习使用JavaScript,感兴趣的朋友可以了解下 在使用 JavaS ...

  5. 数组拼接html js,js数组合并的几种方法

    JS合并数组的几种方法及优劣比较 var datas = [ ['红色', '蓝色'], ['XL'], ['图片', '文字'] ]; 如何 将let datas = [[1, 2], [3,0,5 ...

  6. java中打印输出数组内容的三种方式

    今天输出数组遇到问题,学习一下打印输出数组内容的几种方式 错误示范:System.out.println(array); //这样输出的是数组的首地址,而不能打印出数组数据.(唉,我开始就是这么写的. ...

  7. JavaScript事件处理程序的3种方式

    最近这段时间因为每天要修改网站,为网站做特效,所以看了很多的js接触事件,自己只会使用一小部分,有时用的时候也比较混乱,现在系统的整理了一下,首先跟大家在马海祥博客上跟大家分享的是JavaScript ...

  8. javascript 数组合并与去重

    一.数组合并的两种方法 1.concat--合并数组,并且不去重 var arr1 = ["ab","bc","de","fg&q ...

  9. Javascript事件绑定的几种方式

    Javascript事件绑定的几种方式 来源:http://www.cnblogs.com/rainman/archive/2009/02/11/1387955.html 上篇文章讲到了事件绑定的3中 ...

最新文章

  1. Web服务端性能提升实践
  2. CTFshow 反序列化 web258
  3. 腾讯上海某实验室SQL面试题——查询最后任职信息
  4. iOS开发学习之MapKit - 获得在MapView(地图)中显示多个标记的区域(MKCoordinateRegion)...
  5. 使系统生成50个0-9之间的随机数,将每个数字出现的次数 存入一个一维数组中,统计出现次数最多和出现次数最少的数字,及出现次数 和出现频率。...
  6. 【抢鲜版】ArcGIS 10.7手把手经典图文安装教程(附安装包下载地址)
  7. CSS 实现加载动画之五-光盘旋转
  8. 两阶段最小二乘法原理_R语言代写工具变量与两阶段最小二乘法
  9. python复数的实部和虚部都是整数嘛_Python学习笔记:从入门到放弃(2)基本语法...
  10. 使用Qunit对JavaScript进行单元测试
  11. Forefront TMGUAG
  12. asp.net Page事件处理管道
  13. sql创建和添加时间字段
  14. 显示随机森林多元回归结果
  15. KMP算法中next数组到底有什么深意
  16. AHC(AsyncHttpClient)文件描述符泄漏
  17. 本地玩邮件服务器和邮件客户端
  18. GitHub实现邀请他人一起协作
  19. java关键字有什么用_JAVA中关键字有什么用
  20. linux可以装在硬盘吗,linux系统可以从硬盘下安装吗?

热门文章

  1. 男女声分类研究及应用
  2. c语言考试成绩评价规则编程,上海市高等学校计算机二级C语言程序设计考试大纲.doc...
  3. python编译成exe (使用pyinstaller)
  4. 3dmax-弯曲命令、锥化、扭曲、晶格、FFD命令
  5. MayaDay1:各种复制
  6. # Java 生成pdf文件
  7. Java中Stream流的中间操作步骤
  8. articulate studio能发布html5格式,articulate studio13 最新版
  9. 智能机器人与智能系统(大连理工大学庄严教授)——4.自主机器人
  10. netcdf geotiff java_R-NC格式数据转GeoTIFF