forEach方法
没有返回值,与 for 循环没有什么区别。
[1,2,3,4,5,6,7,8,9,0].forEach(item => {
console.log(item);
})
map方法
返回一个新数组,不改变原数组。通过return内的操作后的数据
const newArr = [1,2,3,4,5,6,7,8,9,0].map(item => {
return item + 1
})
filter方法
返回一个新数组,通过return 返回过滤操作后的数据
const newArr = [1,2,3,4,5,6,7,8,9,0].map(item => {
return item > 5
})
// 存在一种隐式转换的情况,直接运行 Boolean(item)
const newArr = [1,2,3,4,5,6,7,8,9,0].map(item => {
return item;
})
reduce方法
遍历数组返回一个操作后的最终数据。存在initiaVal初始值则从索引 0 开始,不存在则从索引 1 开始。
[1,2,3,4,5,6,7,8,9,0].reduce((prev, cur, index, arr) => {
return prev + cur;
})
// 运行结果 45
1 + 2
3 + 3
6 + 4
10 + 5
15 + 6
21 + 7
28 + 8
36 + 9
45 + 0
[1,2,3,4,5,6,7,8,9,0].reduce((prev, cur, index, arr) => {
return prev + cur;
}, 5);
// 运行结果 50
5 + 1
6 + 2
8 + 3
11 + 4
...
50 + 0
some方法
遍历数组是否符合规则,存在一个符合规则的则结果为 true。如果存在一个判断为 true,则后续不再执行。
[1,2,3,4,5,6,7,8,9,0].some(item => {
return item > 5
});
every方法
遍历数组是否符合规则,全部符合规则结果为 true。
[1,2,3,4,5,6,7,8,9,0].every(item => {
return item > 5
});
find方法
获取数组中符合规则的那一个。
[1,2,3,4,5,6,7,8,9,0].find(item => {
return item > 5
})
// 运行结果为6
findIndex方法
获取数组中符合规则的那一个的索引。
[1,2,3,4,5,6,7,8,9,0].findIndex(item => {
return item > 5
})
// 运行结果为5