数组中的API汇总
一、添加
1、push()
方法将一个或多个元素添加到数组的末尾,并返回数组的新长度。
2、unshift()
方法将一个或多个元素添加到数组的开头,并返回新数组的长度。
二、删除
1、pop()
方法从数组中删除最后一个元素,并返回该元素的值。此方法更改数组的长度。
2、shift()
方法从数组中删除第一个元素,并返回该元素的值。此方法更改数组的长度。
三、操作
1、concat() 合并
方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。
2、slice(start,end) 截取 【区间】
slice(start,end) 方法返回一个从开始到结束(不包括结束)选择的数组的一部分浅拷贝到一个新数组对象,原始数组不会被修改。
● 从start开始截取到end但是不包括end
● 返回值为截取出来的元素的集合
● 原始的数组不会发生变化
3、splice(start,deleteCount,item1,item2…..) 截取 【截取几个】
● start参数 开始的位置
● deleteCount 要截取的个数
● 后面的items为要添加的元素
● 如果deleteCount为0,则表示不删除元素,从start位置开始添加后面的几个元素到原始的数组里面
● 返回值为由被删除的元素组成的一个数组。如果只删除了一个元素,则返回只包含一个元素的数组。如果没有删除元素,则返回空数组
● 这个方法会改变原始数组,数组的长度会发生变化
splice()方法始终会返回一个数组,该数组包含从原始数组中删除的项(如果没有删除任何项,则返回一个空数组),用途最广,有如下3种:
✔删除:需指定2个参数,要删除的第一项位置和要删除的项数
✔插入:需提供3个参数,起始位置、0(要删除的项数)和要插入的项,如要插入多个 项 ,再传入第四,五...
✔替换:需指定3个参数,起始位置、要删除的项数和要插入的任意数量的项
4.split()分割
用于把一个字符串分割成字符串 数组,参数是以什么 条件 分割
5.join() 连接
将一个数组(或一个类数组对象)的所有元素根据传入的参数连接成一个字符串,并返回这个字符串。参数是以什么 条件 拼接
四、查找
1、indexOf(查找的项,查找起点位置的索引)
indexOf()方法从数组的开头(位置0)开始向后查找
如果找到,返回值是查找到的索引
如果没找到,返回的是 -1
2、lastIndexOf(查找的项,查找起点位置的索引)
lastIndexOf()方法从数组的末尾开始向前查找
如果找到,返回值是查找到的索引
如果没找到,返回的是 -1
五、重排序方法
1、sort() 升序排列
2、reverse() 降序排列
六、迭代方法
1、forEach() 遍历
对数组的每一项运行给定函数,这个方法没有返回值。本质上与使用for循环迭代数组是一样的
2、map()
map()方法定义在JavaScript的Array中,它返回一个新的数组,数组中的元素为原始数组调用函数处理后的值。
array.map(function(item,index,arr){})
ES6新增
1、fill()--ES6新增
将数组指定区间内的元素替换为某个值
2、copyWithin() --ES6新增
数组内元素之间的替换
3、find()-- ES6新增
返回数组中第一个满足条件的元素(如果有的话), 如果没有,则返回 undefined
4、findIndex()-- ES6新增
返回数组中第一个满足条件的元素的索引(如果有的话), 如果没有,则返回 -1
5、keys()-- ES6新增
返回一个数组索引的迭代器
6、values()-- ES6新增
返回一个数组迭代器对象,该对象包含数组中每个索引的值
7、entries() -- ES6新增
返回一个数组迭代器对象,该对象包含数组中每个索引的键值对
ES7新增
1、includes()-- ES7新增
用来判断当前数组是否包含某个指定的值,如果是,则返回 true,否则返回false