js常用高阶函数(filter,map,reduce...)

与世无争的帅哥 提交于 2020-02-10 20:39:14
let nums = [10,30,50,100,110,300];
1.filter(fn)
功能:过滤器,fn为函数,返回一个true/false,当为true时保留数组内数值,反之则剔除
目的:筛选100以内
let nums1 = nums.filter(function(n){
   return n < 100; 
 });
let nums1 = nums.filter(n => n<100)
结果[10,30,50]

2.map(fn)
功能:对数组每一个成员开展fn,返回数组
目的:数组数值双倍
let nums3 = nums.map(function(n){
   return n*2;
});
let nums3 = nums.map(n => n*10);
结果[100,300,500,1000,1100,3000]

3.reduce(fn(a,b){},初始值)
功能:类似递归,a为初始值代入,其值返回一个数值c,再次代入fn(a,b),最后得到结果
目的:数组和
let nums4 = nums.reduce(function (pre,n) {
   return n + pre;  
},100);
let nums4 = nums.reduce((m,n) => m+n,100);
结果600
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!