// js数组中forEach/some/every/map/filter/reduce的区别
// 1. foreach:就是一个循环
[20, 30, 40, 50].forEach(item => console.log(item));
// 结果:20 30 40 50
// 2. some: 检查数组中是否有满足条件的,只要有一个返回true,即返回true
var someArr = [1, 2, 3, 4, 5, 100];
console.log(someArr.some(item => item > 50));
// 结果: true
// 3.every: 检查数组中所有元素,如果有一个返回false,即返回false
var everyArr = [-1, -2, -3, -4, 5];
console.log(everyArr.every(item => item < 0));
// 结果: false
// 4.map: 对每一个元素作一次处理,最后返回处理的结果。
var mapArr = [1, 2, 3, 4, 5];
console.log(mapArr.map(item => item * item));
// 结果:[ 1, 4, 9, 16, 25 ]
// 5.filter :对每一个元素作一次处理,返回符合条件的数据。
var filterArr = [5, 10, 3, 9, 2];
console.log(filterArr.filter(item => item % 5 == 0));
// 结果: [5, 10]
// 6. reduce: 对每一个元素按顺序累计处理,返回最终的结果。第二个参数为初始化值,没有则设为0。
var reduceArr = [1, 2, 3, 4, 5, 6];
var res1 = reduceArr.reduce((a, b) => a + b, 0);
var res2 = reduceArr.reduce((a, b) => a + b, 10);
console.log(res1, res2);
转载于:https://my.oschina.net/chinahufei/blog/1801139