mark js reduce用法

时间:2020-03-17 18:47:40   收藏:0   阅读:50
arr.reduce(function(prev,cur,index,arr){
...
}, init);

//arr 表示原数组;
//prev 表示上一次调用回调时的返回值,或者初始值 init;
//cur 表示当前正在处理的数组元素;
//index 表示当前正在处理的数组元素的索引,若提供 init 值,则索引为0,否则索引为1;
//init 表示初始值。
 

reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。

reduce() 可以作为一个高阶函数,用于函数的 compose。

注意: reduce() 对于空数组是不会执行回调函数的。

拓展:

1 去 重
const newArr = arr.reduce(function (prev, cur) { prev.indexOf(cur) === -1 && prev.push(cur); return prev; },[]);
2 最值
const max = arr.reduce(function (prev, cur) { return Math.max(prev,cur); });
3 求和
const sum = arr.reduce(function (prev, cur) { return prev + cur; },0);

 

  

原文:https://www.cnblogs.com/lisiyang/p/12512247.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!