filter
filter中的回调函数有一个要求:必须返回一个Boolean值
true:当返回true时,函数内部会自动将这次回调的n加入到新数组中
false:当返回false时,函数内部会过滤掉这次的n
const num = ['10', '20', '444', '222', '111', '456', '50']
let newNums = num.filter(function (n) {
return n < 100
})
console.log(newNums);
map
let new2Nums = newNums.map(function (n) {
return n * 2
})
console.log(new2Nums);
reduce
reduce作用对数组中所有内容进行汇总
let total = new2Nums.reduce(function (preValue, n) {
return preValue + n
}, 0)
console.log(total);
连在一起写
es5
let total = num.filter(function (n) {
return n < 100
}).map(function (n) {
return n * 2
}).reduce(function (preValue, n) {
return preValue + n
}, 0)
console.log(total);
es6
let total = num.filter(n => n < 100).map(n => n * 2).reduce((pre, n) => pre + n)
console.log(total);