高阶函数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

 

posted @ 2022-02-17 22:04  Mr_sven  阅读(14)  评论(0编辑  收藏  举报