JavaScript 数组方法总结

202 阅读2分钟

一、数组遍历方法

方法使用示例是否改变原数组返回值作用
forEach()arr.forEach(element => console.log(element))遍历数组,对每个元素执行函数
for...of 循环for (const value of arr) console.log(value)遍历数组的值

二、数组转换与映射方法

方法使用示例是否改变原数组返回值作用
map()let newArr = arr.map(element => element *2)新数组,包含每次函数调用结果创建新数组,每个元素执行函数
filter()let newArr = arr.filter(element => element > 3)新数组,包含符合条件元素创建新数组,包含符合条件的元素
concat()let newArr = arr.concat(otherArray)新数组合并数组
slice()let newArr = arr.slice(start, end)新数组提取数组的一部分
flat()let newArr = arr.flat(depth)新数组将数组扁平化
flatMap()let newArr = arr.flatMap(element => newArray)新数组映射并扁平化数组

三、数组添加与删除方法

方法使用示例是否改变原数组返回值作用
push()let newLength = arr.push(newElement)新数组长度添加元素到数组末尾
pop()let element = arr.pop()被删除的元素删除数组末尾元素
shift()let element = arr.shift()被删除的元素删除数组开头元素
unshift()let newLength = arr.unshift(newElement)新数组长度添加元素到数组开头
splice()let removed = arr.splice(startIndex, deleteCount)被删除元素数组删除、替换或添加元素

四、数组查找与检测方法

方法使用示例是否改变原数组返回值作用
every()let result = arr.every(element => element < 6)布尔值,truefalse测试所有元素是否符合条件
some()let result = arr.some(element => element > 4)布尔值,truefalse测试是否有元素符合条件
indexOf()let index = arr.indexOf(targetElement)索引值或 -1查找元素第一次出现的索引
lastIndexOf()let index = arr.lastIndexOf(targetElement)索引值或 -1查找元素最后一次出现的索引
find()let element = arr.find(element => condition)元素值或 undefined查找符合条件的第一个元素
findIndex()let index = arr.findIndex(element => condition)索引值或 -1查找符合条件的第一个元素的索引
includes()let result = arr.includes(targetElement)布尔值,truefalse判断数组是否包含某个元素

五、数组排序与反转方法

方法使用示例是否改变原数组返回值作用
sort()arr.sort((a, b) => a - b)原数组对数组元素排序
reverse()arr.reverse()原数组反转数组元素顺序

六、数组归约方法

方法使用示例是否改变原数组返回值作用
reduce()let result = arr.reduce((acc, curr) => acc + curr, initialValue)累加结果数组元素累加
reduceRight()let result = arr.reduceRight((acc, curr) => acc + curr, initialValue)累加结果数组元素从右往左累加

七、数组转换为字符串方法

方法使用示例是否改变原数组返回值作用
join()let str = arr.join(separator)字符串将数组元素连接为字符串
split()let arr = str.split('')不改变字符串数组将字符串分割为数组