jacaScript中数组的常用方法

139 阅读3分钟

前言

在我们开发过程中都会遇到数组,而今天我们来聊聊数组中的方法以及在不同的场景下我们如何去使用,看看大家还记得几个。

1.push

push()是我们平时写代码经常碰到的,它可以再数组的末尾添加一个或者多个元素

如下示例:

image.png

2.pop

pop()移除并返回数组末尾的元素,这个元素大家都很熟悉但是在开发上大家更比较常用splice()进行删除操作,pop的灵活性没有splice好,只能指定数组的末尾。

image.png

3.unshift

unshift()在数组开头添加一个或多个元素

image.png

4.shift

shift()移除并返回数组开头的元素

image.png

5.concat

concat()合并两个或者多个数组,并返回新的合并后的数组,并且不会修改原始数组

image.png

6.slice

slice() 从数组中提取指定位置的元素,返回一个新的数组,不会修改原始数组

image.png

7.splice

splice()主要是对数组进行操作,其中包括删除、添加、替换等,会修改原始数组

  • splice(i) i作为第一个参数,它为数组索引(下标),单只有一个i的时候,表示删除数组中下标i及i之后的所有元素,,返回删除的元素,原始数组会修改.
  • 其中参数i为整数,i分为正数(包括0)以及负数,正数时删除索引为i及i之后的元素,负数时则从数组末尾往前开始计算

image.png

  • splice方(i,j) 当splice方法参数有两个的时候,两个参数必须均为整数,表示从数组索引为i开始删除,一共删除j个元素,返回删除的元素,原始数组会修改

image.png

  • splice方(i,j,k1,k2,k3,k4) 当splice方法参数有三个或者三个以上的时候,i表示索引(下标),j表示删除个数,k1,k2,k3...为删除相应元素后要添加的元素,返回删除的元素,原始数组会修改

image.png

8.indexOf

indexOf() 查找指定元素在数组中的第一次出现索引,如果不存在则返回-1

image.png

9.lastIndexOf

lastIndexOf() 从数组末尾开始查找指定元素在数组中第一次出现的索引,如果不存在则返回-1

image.png

10.includes

includes() 检查数组是否包含指定元素,返回一个布尔值

image.png

11.join

join()将数组中的所有元素转化为字符串,并使用指定的分隔符连接它们

image.png

12.reverse

reverse() 点到数组中元素的顺序,会修改原始数组

image.png

13.sort

sort() 对数组中的元素进行排序,会修改原始数组

  • 不带参数时候,将按照按照字母顺序排序,通俗来说就是根据自负编码的顺序进行排序

image.png

  • 带参数时,arr.slot(a,b),a=b或a>b,返回0或正值,不做改变;a<b,返回负值,说明后面的数小于前面的数,调换位置,如下图示实例

image.png

14.filter

filter() 创建一个新数组,其中包含符合条件的宿所有元素

image.png

15.map

map() 创建一个新数组,其中包含对原始数组中的每个元素进行处理后的结果,且不会对空数组进行检测,不会修改原始数组

image.png

16.reduce

reduce()将数组中的元素进行累计操作,返回一个单一的值

image.png

17.forEach

forEach()将数组中的每个元素执行提供的函数,该方法不直接修改原始数组,但回调函数可以修改它

  • forEach支持三个参数,第一个为遍历的数组内容,第二个为对应的索引,第三个则是数组本身

image.png

总结

数组方法有很多,在平时开发中我们更常用就push、splice、indexOf、filter、map这几个,其他方法我们或许不常用,但是一定要有所了解,splice能代替push、pop、unshift等,但是面试问你数组处理的时候不可能只回答一个splice

第一次写文章,写的不好地方请谅解,如果有老铁有需要补充或者错的地方的可以指正下!