高阶函数filter,map,reduce
filter函数
filter中的回调函数有一个要求:必须返回一个boolean值;
返回true时:函数内部会自动将这次回调的的n值加入到新的数组中
返回false时:函数内部会自动过滤这次的n
methods:{ f1(){ let nums = [10,50,30,80,60,20]; let newNums = nums.filter(n=>{ return n <=50; }); return newNums; //[ 10, 50, 30, 20 ] } }
map函数
f2(){ let nums = [10,50,30,80,60,20]; let newNums = nums.map(n=>{ return n * 10; }); return newNums; //[ 100, 500, 300, 800, 600, 200 ] }
reduce函数
对数组中所有的内容进行汇总
f3(){ let nums = [10,20,30,40]; let newNums = nums.reduce((pre,n)=>{ return pre + n; },0);//pre初始化0 return newNums; }
第1次:pre 0 n 10
第2次:pre 10 n 20
第3次:pre 30 n 30
第4次:pre 60 n 40
return 100