数组 API 表
方法 |
功能 |
原数组是否改变 |
push() |
在数组的最后一位新增一个或多个数据,返回值是长度 |
改变 |
unshift() |
在数组的第一位新增一个或多个数据,返回值是长度 |
改变 |
pop() |
删除最后一位,并返回删除的数据 |
改变 |
shift() |
删除第一位,并返回删除的数据 |
改变 |
reverse() |
反转数组,返回结果 |
改变 |
join() |
使用分隔符,将数组转为字符串并返回 |
不改变 |
slice() |
截取指定位置的数组,并返回 |
不改变 |
concat() |
合并数组,并返回合并之后的数据 |
不改变 |
sort() |
排序(字符规则),返回结果 |
改变 |
splice() |
删除指定位置,并替换,返回删除的数据 |
改变 |
toString() |
直接转为字符串,并返回 |
不改变 |
valueOf() |
返回数组对象的原始值 |
不改变 |
indexOf() |
查询并返回数据的索引 |
不改变 |
lastIndexOf() |
反向查询并返回数据的索引 |
不改变 |
includes() |
查询数组中是否包含某个元素,返回布尔类型值 |
不改变 |
forEach() |
参数为回调函数,遍历数组所有的项,回调函数接受三个参数,分别为 value,index,self;forEach 返回值为 undefined |
不改变 |
map() |
同 forEach,同时回调函数返回数据,组成新数组由 map 返回 |
不改变 |
filter() |
同 forEach,同时回调函数返回布尔值,为 true 的数据组成新数组由 filter 返回 |
不改变 |
every() |
同 forEach,同时回调函数返回布尔值,全部为 true,由 every 返回 true (过滤) |
不改变 |
some() |
同 forEach,同时回调函数返回布尔值,只要有一个为 true,由 some 返回 true |
不改变 |
reduce() |
归并,同 forEach,迭代数组的所有项,并构建一个最终值,由 reduce 返回 |
不改变 |
reduceRight() |
反向归并,同 forEach,迭代数组的所有项,并构建一个最终值,由 reduceRight 返回 |
不改变 |
find() |
返回通过测试(函数内判断)的数组的第一个元素的值。方法为数组中的每个元素都调用一次函数执行:当数组中的元素在测试条件时返回 true 时,find() 返回符合条件的元素,之后的值不会再调用执行函数。如果没有符合条件的元素返回 undefined 注意: find() 对于空数组,函数是不会执行的。注意: find() 并没有改变数组的原始值。 |
不改变 |
API 例子
push()
// 原始数组
let myArray = [1, 2, 3, 4];
// 使用push()函数在数组末尾添加元素
myArray.push(5); // 添加一个元素
myArray.push(6, 7); // 添加多个元素
console.log(myArray); // 输出: [1, 2, 3, 4, 5, 6, 7]