reduce使用技巧
Posted pjl43
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了reduce使用技巧相关的知识,希望对你有一定的参考价值。
一、使用reduce同时执行map(循环)和filter(过滤)
例如,将数组中的项的值加倍,然后只选择那些大于50的项
const numbers = [10, 20, 30, 40]; const doubledOver50 = numbers.reduce((finalList, num) => { num = num * 2; //(map) //filter number > 50 if (num > 50) { finalList.push(num); } return finalList; }, []); doubledOver50; // [60, 80]
二、计算重复数组项或将数组转换为对象
var cars = [‘‘宝马‘,‘奔驰‘,‘奔驰‘,‘特斯拉‘,‘宝马‘,‘丰田‘]; var carsObj = cars.reduce(function(obj,name){ obj [name] = obj [name]?++ obj [name]:1; return obj; },{}); carsObj; // => {宝马:2,奔驰:2,特斯拉:1,丰田:1}
以上是关于reduce使用技巧的主要内容,如果未能解决你的问题,请参考以下文章