es6常用的数组操作方法

越来越多的公司采用前后端分离的开发模式,前端的工作也不是简简单单的用div写几个HTML页面,更多的拿到后端反馈过来的数据,进行处理整合,然后再将数据展现出来。大多数情况下从后端请求过来的数据都是json包含多个对象的数组,下面我将前端常用的数组操作记录一下。
(1)连接数组:contact()
contact()是连接两个数组的方法,连接两个数组并不会改变原数组,只会返回一个被连接数组的新的副本,所以需要有一个新的数组去接收,下面是将两个数组联合在一起的示例

let arr1=[1,2,3]
let arr2=[4,5,6]
let arr3=arr1.contact(arr2)
console.log(arr3)//[1,2,3,4,5,6]
console.log(arr1)//[1,2,3]

(2)合并数组:join()
join() 方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的,默认使用’,'号分割,不改变原数组。

let arr=[1,2,3]
consule.log(arr.join())   //'1,2,3'
console.log(arr)    //[1,2,3]

(3)删除数组: splice()
splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。splice() 方法会直接对数组进行修改。在循环判断数组满足某一条件然后将其删除,使用splice()方法的时候,如果要删除原来的数组,最好是新定义一个数组,用来接收,要不然可能会发生错误。例如下面的方法:

let arr=[1,2,3]
arr.map((item.index)=>{
	if(item===1){
			arr.splice(index)
}})

在删除到第一个元素的时候,splice方法会改变原来的数组,arr会重新map这个,时候就会造成重复,可能会造成错误。
(4)遍历数组:forEach(),map(),filter(),reduce(),every(),some(),在开发中经常用到的方法是前三个,下面对每个方法进行一下简单的介绍:
forEach():对数组中每一项运行给定函数。该函数没有返回值,一般需要对数组的每个元素进行筛选处理的时候使用,不改变原数组。
map():对数组中每一项运行给定函数,返回每次函数调用的结果组成的函数。
filter():对数组中的每一项运行给定函数。返回该函数会返回 true 的项组成的数组,这是一个筛选的方法,可以筛选出满足要求的数组元素,在实际开发中,传输过来的数据,并不是每一项都需要展示的,所可以通过filter()方法筛选出符合实际开发需要的数组元素。
reduce():让数组中的前项和后项某种计算,并累计最终值。
every():对数组中的每一项运行给定函数。如果函数对每一项都返回 true,则返回 true,相当于一个判定方法,判断数组的每一个元素是否符合要求,和some()方法可以对比记忆。
some():对数组中每一项运行给定函数。如果函数对 任一项返回 true,则返回 true,也是一个判定数组的方法,但是它和every()不同,它只要发现一项符合条件,就会返回true。
网友总结了一张比较不错的图:
在这里插入图片描述
参考链接:https://www.jianshu.com/p/2ce401db63f8

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值