forEach,filter.map,reduce
map()方法 参数是一个函数 函数有两个参数 没有return返回值 结果就是undefined
// map 参数是一个函数 函数有两个参数
//
const arr = [1, 2, 3]
const res = arr.map(function (item, index) {
return item * item
})
console.log(res);
// 函数没有返回值 得到结果就是undefined
const res1 = arr.map(function (item, index) {
// return item*item
})
console.log(res1);// undefined
forEach() 参数是一个函数 函数有两个参数
const arr = [10,20,30]
const res1 = arr.forEach(function(item, index) {
console.log(13);
})
console.log(res1);
遍历三次 返回值是undefined
filter() 同样参数是一个函数 函数有两个参数 返回是一个数组
const arr = [10,20,30]
const res2 = arr.filter(function(item, index) {
return item >20
})
console.log(res2);
返回值是一个 [20] 数组20 一般用于筛选 比较
reduce() 有两个参数, 第一个参数是 数组, 第二参数是 初始值(可以不写)
// 返回值: 函数最后 return的返回值
const arr = [1,2,3,4]
// reduce的第一个参数是函数, 内部函数的参数 有三个 sum 累加器 item 当前数组项 index
const res = arr.reduce(function(sum, item, index){
// 函数循环3次的原因,因为没有给reduce第二个参数,所有 累加器sum的初始值就是 数组第一项
console.log(sum, item, index);
sum = sum + item
return sum; //这个return必须写上,返回的值就是sum
})
console.log('最终的结果:', res);
reduce函数的使用 ---- 工作里面 react框架里面 有很多这个函数使用