JavaScript数组操作函数总结分享
本篇文章给大家带来了关于javascript的相关知识,其中主要整理了数组操作函数的相关问题,包括了元素删除、splice、slice、concat等等内容,下面一起来看一下,希望对大家有帮助。
【相关推荐:javascript视频教程、web前端】
数组进阶
上篇介绍了数组的基本概念和一些简单的数组元素操作函数,实际上,数组提供的函数还有很多。
push
、pop
、shift
和unshift
是操作数组首尾两端的函数,上文已经讲过,本文不再赘述。
元素删除(对象方式)
上篇已经简单介绍过,数组就是一个特殊的对象,因此我们可以尝试使用对象的属性删除方法:delete
。
举个例子:
let arr = [1,2,3,4,5];delete arr[2];console.log(arr);
代码执行结果如下:
注意观察图中标黄的位置,虽然元素被删除了,但是数组的长度仍然是5
,而且删除掉的位置多了一个空
。如果我们访问下标为2
的元素,会得到如下的结果:
造成这种现象的原因是,delete obj.key
是通过key
移除对应值的,也就是说delete arr[2]
删除了数组中的2:3
键值对,当我们访问下标2
时,就是undefined
了。
而在数组中,我们常常希望删除元素后,元素的位置会被后继的元素填补,数组的长度变短。
这个时候,我们就需要splice()
方法。
splice()
需要提前说明的是,splice()
方法的功能相当丰富,并非只能删除元素,以下是语法:
arr.splice(start[,deleteCount,e1,e2,...,eN])
splice
方法从start
位置开始,删除deleteCount
个元素,然后原地插入e1,e2,e3
等元素。
删除一个元素
以下实例可以从数组中删除一个元素:
let arr = [1,2,3,4,5]arr.splice(0,1);//删除掉第一个元素1console.log(arr)