reduce() 方式吸收一个函数作为累加器,数组中的每个值(从左到右)更先缩减,最终盘算为一个值。
reduce() 可以作为一个高阶函数,用于函数的 compose。
注重: reduce() 对于空数组是不会执行回调函数的。
array.reduce(function(total, currentValue, currentIndex, arr), initialValue)
1、functiong必填,用于执行每个数组米素的函数。其参数如下:
total 必须。初始值, 或者盘算竣事后的返回值。2、initialValue可选,传递给函数的初始值。
IE-9以上版本、Firefox-3.0以上版本、Safari-4以上版本、Opera-10.5以上版本。
var numbers = [1, 2, 3, 4]; function getSum(total, num) { return total + num; } console.log(numbers.reduce(getSum)) //10
var rel=[[0, 1], [2, 3], [4, 5]].reduce(function(a, b) { return a.concat(b); }); console.log(rel) //[0, 1, 2, 3, 4, 5]
var numbers = [1,10,100,0]; var max = numbers.reduce(function(pre,cur,inde,arr){return pre>cur?pre:cur;}); console.log(max) //100
var arr = [{name: 'tony', age: 18}, {name: 'fly', age: 20}]; var obj = arr.reduce((prev, cur) => {prev[cur.age] = cur; return prev;}, {}); console.log(obj) //18:{name: "tony", age: 18} //20:{name: "fly", age: 20}
var arr = 'abcdaabc'; var info = arr.split('').reduce((p, k) => (p[k]++ || (p[k] = 1), p), {}); console.log(info); //{ a: 3, b: 2, c: 2, d: 1 }
Array.prototype.unique = function() { var sortArr = this.sort(), result = []; sortArr.reduce((v1,v2) => { if(v1 !== v2){ result.push(v1); } return v2; }) result.push(sortArr[sortArr.length - 1]); return result; }
......
1.阿里云: 本站现在使用的是阿里云主机,平安/可靠/稳固。点击领取2000米代金券、领会最新阿里云产物的种种优惠流动点击进入
《重活之超级黑客》txt全集下载 《重活之超级黑客》百度网盘txt 最新全集下载 链接:提取码:wolk 《重活之超级黑客》是作者烂泥逝雪志所作的一本都市重生类的小说,2012年6月22日完成连载。链...
中新网客户端北京10月17日电(记者 张尼)今天,是中国第六个扶贫日,也是第27个国际消除贫困日。作为世界上减贫人口最多的国家,中国对全球减贫的贡献率超过了70%,成绩令人鼓舞。 资料图:紫云县...
桂花的功效与作用(桂花的好处) 桂花的功效与作用(桂花的好处) 桂花的功效与作用 1.化痰止咳...
微信是最热门的手机聊天软件之一,但一小部分用户认为微信上的人太吵了,想保持安静,所以他们想删除微信账户。如何删除微信号?让我们看看2018年最新版本微信取消微信账户的方法。 1.关于如何取消微信号,...
转眼之间,19年只剩下4天,新的一年即将到来,回顾2019,发现互联网的商业奇才可真不少,并且手段高明,商业模式也给大家设计的清清楚楚,算的账不差一分一毫,让不少群众一头热血做着发家致富、躺赚的梦,一...
如何查看对方的手机通话清单(怎么查看手机通话清单) 用这种方式,我记得有一件事,手机也可以拆开电池。在关闭手机和保留电池之间,会有两个截然不同的提示。手机关机提示是,你拨打的用户已被关闭,而你拨打的...