# map()
map()
方法返回一个新数组,数组中的元素为原数组元素调用函数处理后的值。
接收参数:一个具有三个参数的回调函数。
- current value:数组当前元素
- index:数组当前元素的索引
- arr:原数组本身
返回值:返回一个新数组,数组元素由回调函数返回的结果组成。
let list = [1, 2, 3, 4] | |
let res = list.map(item => item * 2) | |
console.log(res) // [2, 4, 6, 8] |
# filter()
与 map()
方法类似,对数组中的每个元素执行回调函数,单数返回的数组只包含指定条件为 true 的元素。
接收参数:一个具有三个参数的回调函数。
- current value:数组当前元素
- index:数组当前元素的索引
- arr:原数组本身
返回值:返回数组,包含了符合条件的所有元素。如果没有符合条件的元素则返回空数组。
let list = [1, 2, 3, 4] | |
let res = list.filter(item => item > 2) | |
console.log(res) // [3, 4] |
# some()
返回一个 boolean
,判断数组是否有元素符合回调函数中的条件,如果有一个元素符合条件,则循环终止
接收参数:一个具有三个参数的回调函数。
- current value:数组当前元素
- index:数组当前元素的索引
- arr:原数组本身
let list = [1, 2, 3, 4] | |
let res = list.some(item => item > 2) | |
console.log(res) // true |
# every()
返回一个 boolean
,检测数组中所有元素是否符合条件,如果数组中有一个条件不符合条件,则整个表达式返回 false,跳出循环。如果所有的元素都满足元素,则返回 true。
接收参数:一个具有三个参数的回调函数。
- current value:数组当前元素
- index:数组当前元素的索引
- arr:原数组本身
let list = [1, 2, 3, 4] | |
let res = list.every(item => item > 2) | |
console.log(res) // false |
# reduce()
接收一个函数作为累加器,数组中的每个值开始缩减,最终计算为一个值。
接收参数:一个具有四个参数的回调函数。
- total:初始值
- current value:数组当前元素
- index:数组当前元素的索引
- arr:原数组本身
let list = [1, 2, 3, 4] | |
let res = list.reduce((total, item) => {return total + item}, 0) | |
console.log(res) // 10 |
# find()
方法返回通过回到函数测试的数组中第一个元素的值。
接收参数:一个具有三个参数的回调函数。
- current value:数组当前元素
- index:数组当前元素的索引
- arr:原数组本身
let list = [1, 2, 3, 4] | |
let res = list.find(item => item > 2) | |
console.log(res) // 3 |
# includes()
用来判断数组中是否包含指定的元素,若果有则返回 true,反之为 false。
接收参数:
- searchElement:要查找的元素
- fromIndex:可选,从该索引处开始查找 searchElement。如果为负值,则按升序从 array.length + fromIndex 的索引开始搜索。默认为 0。
let list = [1, 2, 3, 4] | |
let res = list.includes(4) | |
console.log(res) // true |
# forEach()
该方法用于调用数组中的每个元素,并将元素传递给回调函数。
接收参数:一个具有三个参数的回调函数。
- current value:数组当前元素
- index:数组当前元素的索引
- arr:原数组本身
let list = [1, 2, 3, 4] | |
list.forEach(item => console.log(item)) | |
// 1 | |
// 2 | |
// 3 | |
// 4 |