数组对象的21种常用方法

眉间皱痕 提交于 2020-03-03 19:39:52

1.concat

 连接两个或多个数组,返回一个新的数组,且对其他数组不造成影响

返回值:返回一个新的数组

参数:用于连接的数组名 可以是多个也可以是一个

2.every

  检测数组中的每个元素是否都符合条

返回值:如果数组中有一个不符合就返回false 全部符合就返回true

参数:两个参数 第一个参数是一个回调函数(参数是一个函数)

           第二个参数是一个对象,可选,用于替换回调函数中的this 

这里的obj,把回调函数callback的指向window改成了对象obj 控制台输出的也就是对象obj

3.filter

检测数组中的元素,返回符合条件的元素构成的新的数组

返回值:返回的是一个新的数组

参数: 第一个是callback

4.find

将数组中的每个元素都调用一次,然后返回第一个符合条件的元素

返回值:返回的是第一个符合条件的元素

参数:第一个是callback,必须要有返回值

           第二个是用来替换this指向的

5.findIndex

用法与find一样,不一样的是findIndex是将数组中的每一个元素执行一次,返回第一个不符合条件的元素

6.forEach

调用函数中的每一个元素并将元素传递给callback  forEach跟for循环一样 遍历每个元素

没有返回值 

参数:第一个参数是callback

    第二个是用来替换callback中this的对象

7.map

返回一个新数组,这个数组中的元素是callback执行后的返回值

返回值:返回的是一个数组

参数:第一个参数是callback  callback必须有返回值

      第二个参数用于替换callback中的this

8.includes

 判断一个数组中是否包含一个指定的值 有就返回true 没有就返回false

返回值:boolean

参数:指定的值

9.indexOf

搜索一个元素在数组中的位置,有就返回它的索引,没有就返回-1

返回值 数字 索引 -1

参数:指定的值

10.join

将数组中的所有元素转成一个字符串

返回值:返回一个新的字符串

参数:指定的分隔符,不填的话默认是逗号(,)

11.push

向数组的末尾添加新的元素,修改原来的数组

返回值:新数组的长度

参数:元素

12.pop

删除数组中的最后一个元素,修改原来的数组

返回值:返回的是删除的那个元素

无参数

13.reduce   迭代

当前元素在回调函数中的操作,离不开前一个元素的返回值,一般从第二项开始执行

返回值:参数第一个参数是一个回调函数,必须有返回值否则都是undefined。

1.回调函数的第一个参数是 total (total 是前一个元素所对应的回调函数返回值)

2.回调函数的第二个参数是当前元素

3.回调函数的第三个参数是当前元素对应的索引值

第二个参数是一个初始值如果写了,reduce从第一项开始执行,把这个初始值当作第一项回调里的total,如果不写,从第二项开始执行,第一个元素就是第二项里的total。

14.reverse() 

将数组顺序反转

返回值:反转后的数组,改变了原数组

参数:没有参数

15.unshift() 

在数组的开头添加一个或多个元素

返回值 :返回添加后数组的新长度

参数 :要添加的元素

16.shift()

删除数组中的第一个元素

返回值 :返回被删除的那个元素

参数 :没有参数

17.slice()

从原数组中截取并返回一部分元素;

返回值:一个新数组截取到的元素构成的新数组

参数开始的位置和结束的位置(不包含最后一个元素)

18.some()

检索数组中是否有符合条件的元素,只要有一个符合返回true,全不符合返回false

返回值:boolean

参数:一个回调函数回调函数里必须有返回值

19.sort()

对数组的元素进行排序按0-9-a-z顺序排列

返回值:排列后的新数组

参数: callback

20.splice()

从数组中指定的某一项开始删除元素或添加新元素会改变原有的数组

返回值:一个数组如果删除了元素返回的是这写删除元素构成的新数组

(如果没有删除返回的是一个空数组)

 参数 :第一个参数必须填起始位置

 第二个参数 , 删除元素的个数可以是0 代表没有删除不填删除后面所有的

 第三类参数  ,从第三个参数开始后面都是添加的新元素

21.toString()

将数组转化为字符串并返回这个字符串

返回值 :转化后的字符串

参数:没有参数

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!