以下是一些主要的 JavaScript 数组原型方法(按字母顺序排列):
方法 | 作用 | 参数 |
---|---|---|
concat() |
连接两个或更多数组,并返回新的数组,原数组不变 | 可以接受任意数量的数组或非数组值作为参数进行拼接 |
copyWithin() |
在数组内部复制元素到其他位置 | 三个参数:目标索引(target),开始复制的源索引(start),可选结束复制的源索引(end) |
entries() |
返回一个包含键值对迭代器对象 | 无参数 |
every() |
检查数组中的所有元素是否都满足测试函数 | 测试函数和可选的上下文对象(this) |
fill() |
使用给定值填充数组的一个或多个元素范围 | 填充值、开始索引(可选,默认 0)、结束索引(可选,默认数组长度) |
filter() |
创建一个通过测试函数的新数组 | 测试函数和可选的上下文对象(this) |
find() |
找出数组中第一个满足测试函数的元素并返回其值 | 测试函数和可选的上下文对象(this) |
findIndex() |
找出数组中第一个满足测试函数的元素索引 | 测试函数和可选的上下文对象(this) |
flat() |
将数组扁平化至指定深度 | 可选深度值(默认为 1,表示只扁平一层) |
flatMap() |
映射每个元素后再扁平化成新数组 | 映射函数和可选的上下文对象(this) |
forEach() |
对数组的每个元素执行一次提供的函数 | 遍历函数和可选的上下文对象(this) |
includes() |
检查数组是否包含某个值 | 查找的值、可选起始搜索索引 |
indexOf() |
返回数组中第一个匹配值的索引 | 查找的值、可选起始搜索索引 |
join() |
把数组的所有元素放入一个字符串 | 可选分隔符(默认为逗号) |
keys() |
返回一个包含数组索引的迭代器对象 | 无参数 |
lastIndexOf() |
返回数组中最后一个匹配值的索引 | 查找的值、可选起始搜索索引(从后向前搜索) |
map() |
创建一个由原数组元素调用函数处理后组成的新数组 | 映射函数和可选的上下文对象(this) |
pop() |
删除并返回数组的最后一个元素 | 无参数 |
push() |
向数组末尾添加一个或多个元素并返回新长度 | 一个或多个要添加的元素 |
reduce() |
对数组元素执行累积操作,结果汇总为单个返回值 | 累积函数、可选初始值 |
reduceRight() |
类似于reduce() ,但按降序从右向左处理 |
累积函数、可选初始值 |
reverse() |
颠倒数组中元素的顺序 | 无参数 |
shift() |
删除并返回数组的第一个元素 | 无参数 |
slice() |
提取数组的一部分并返回新数组 | 开始索引、可选结束索引(不包括该索引本身) |
some() |
检查数组中是否存在至少一个元素满足测试函数 | 测试函数和可选的上下文对象(this) |
sort() |
对数组的元素进行排序 | 可选比较函数,若无则按字典顺序排序 |
splice() |
插入、删除或替换数组内的元素 | 起始索引、可选删除元素的数量、零个或多个要插入的元素 |
toLocaleString() |
返回数组元素转换为本地字符串后的拼接结果 | 无参数 |
toString() |
把数组转换为一个字符串 | 无参数 |
unshift() |
向数组开头添加一个或多个元素并返回新长度 | 一个或多个要添加的元素 |
请注意,某些方法中的“上下文对象(this)”是指在执行回调函数时传递给该函数的this
值。
以上列表包括了 ES5 及后续版本中引入的一些重要数组方法。随着 JavaScript 的发展,还有如Array.from()
、Array.of()
、isArray()
等额外的方法。此外,还有迭代器相关方法(如values()
),以及扩展运算符...
在数组操作中的应用。