JS中 reduce() 数组去重及求数组项最大值
Posted lwming
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS中 reduce() 数组去重及求数组项最大值相关的知识,希望对你有一定的参考价值。
一、语法
arr.reduce(function(prev,cur,index,arr){...}, init);
其中,
arr表示原数组;prev表示上一次调用回调时的返回值,或者初始值 init;cur表示当前正在处理的数组元素;index表示当前正在处理的数组元素的索引,若提供 init 值,则索引为0,否则索引为1;init表示初始值。
1.求数组项最大值
let arr = [1, 2, 3,3,2,4] let max = arr.reduce(function (prev, cur) { return Math.max(prev,cur); }); console.log(max)//4
由于未传入初始值,所以开始时prev的值为数组第一项1,cur的值为数组第二项2,取两值最大值后继续进入下一轮回调。
2.数组去重
let arr = [1, 2, 3,3,2,4] let newArr = arr.reduce(function (prev, cur) { prev.indexOf(cur) === -1 && prev.push(cur); return prev; },[]); console.log(newArr)//[1, 2, 3, 4]
以上是关于JS中 reduce() 数组去重及求数组项最大值的主要内容,如果未能解决你的问题,请参考以下文章
js ,数组求和,数组去重,es7 新增数组方法reduce()的用法详解