一、遍历的方法
(遍历数组中的每个元素,对每个元素执行操作)
- forEach():
对数组中的每个元素执行指定函数。接受一个回调函数作为参数,该回调函数将会被传入三个参数:当前遍历到的元素
、该元素在数组中的索引
和整个数组本身
。 - map():
创建一个新数组,其中包含对原始数组中每个元素执行指定的结果。第一个参数是一个回调函数,它会被传入三个参数:当前元素的值
、当前元素的索引
以及原始数组或对象
。回调函数可以返回任何值,这些值将组成一个新的数组或对象
。第二个参数是可选的this 值
- filter():
创建一个新数组,包含满足指定条件的原始数组中的所有元素。接受一个回调函数作为参数,该回调函数会遍历数组中的每个元素并返回一个布尔值
。如果回调函数返回 true,那么该元素会被保留在新的数组中
;否则,该元素会被过滤掉
。 - reduce():
使用指定的函数将数组中的所有元素累计为单个值。接收两个参数,第一个参数是一个回调函数,回调函数又接收四个参数:
accumulator:累加器,表示当前的计算结果。
currentValue:当前元素的值。
currentIndex:当前元素的下标。
array:原数组。
第二个参数是可选的初始值,用来指定第一个元素的初始值
。
const numbers = [1, 2, 3, 4, 5];
const sum = numbers.reduce((accumulator, currentValue) => accumulator + currentValue);
console.log(sum); // 输出 15
//加入初始值
const numbers = [1, 2, 3, 4, 5];
const initialValue = 10;
const sum = numbers.reduce((accumulator, currentValue) => accumulator + currentValue, initialValue);
console.log(sum); // 输出 25
二、修改的方法
- push()/pop(): 在数组的末尾添加/删除一个元素。
- unshift()/shift(): 在数组的开头添加/删除一个元素。
- splice(): 在指定位置插入删除一个或多个元素,插入一个元素。
- fill():
使用指定的值 填充数组中的所有元素。接受两个参数:第一个参数是要用来填充数组的值
,第二个参数 (可选) 是用来指定
要填充的起始位置
和结束位置
。 - reverse(): 反转数组中的元素顺序。
- sort(): 对数组进行升序排序或者根据指定函数进行排序。
三、搜索方法
(查找指定元素)
- indexOf()/lastIndexOf(): 返回指定元素第一次/最后一次出现的索引,如果不存在则返回-1。
- find()/findIndex(): 返回满足指定条件的第一个元素/元素的索引。
四、其他方法
- every(): 测试是否所有元素满足指定条件。
- some(): 测试是否至少有一个元素满足指定条件。
- concat(): 将两个或者多个数组合并为一个数组。()
- flat()/flayMap(): 将嵌套数组展平为一维数组。
- slice(): 返回指定位置的子数组
ES6/ES7新增方法:
find() / findIndex()
- 返回满足指定条件的第一个元素/元素的索引。
includes()
- 检查数组是否包含指定的元素。
flat() / flatMap()
- 将嵌套数组展平为一维数组。
fromEntries()
- 将键值对数组转换为对象。
Array.prototype@@iterator
- 返回一个迭代器,使数组可以使用for…of循环遍历。
ES5新增方法:
isArray()
- 检查给定值是否为数组类型。
forEach()
- 对数组中的每个元素执行指定的函数。
map()
- 创建一个新数组,其中包含对原始数组中每个元素执行指定函数的结果。
filter()
- 创建一个新数组,其中包含满足指定条件的原始数组中的所有元素。⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣿⡟⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⢠⣾⣶⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣴⣿⠟⠁⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠘⠿⢿⣟⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⣿⡿⠃⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⣷⣤⡀⠀⠀⠀⠀⠀⢠⣴⣶⣄⠀⠀⠀⠀⢀⢀⣼⣿⠏⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣿⣿⣶⣦⡀⠀⢀⣿⣿⣿⣿⡀⠀⠀⣰⣵⣿⠟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣿⣿⣿⣾⣿⣾⣿⣿⣿⣿⣿⣦⣾⣿⣿⠏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠠⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣟⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠞⠛⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣺⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢹⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⣿⣿⣿⣿⣿⣿⣿⣷⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⣿⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⣿⣿⣿⣿⣿⠏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⠿⠋⠁⠀⠉⠙⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀