reduce方法介绍
1  | arr.reduce(function (prev, cur, index, arr) {  | 
prev: 表示上一次调用回调时的返回值,或者初始值init;
cur: 表示当前正在处理的数组元素
index: 表示当前正在处理的数组元素的索引,若提供init值,则索引为0,否则索引为1.
arr: 表示原数组
init: 表示初始值
常用于
- 数组求和,求乘积
 
1  | let arr = [1, 2, 3, 4];  | 
- 计算数组中每个元素出现的次数
 
1  | let arr = ['小米', '华为', '苹果', '一加', '一加', '一加', '小米'];  | 
- 数组去重
 
1  | const arr = [1, 1, 2, 3, 5, 7, 2, 9];  | 
- 将二维数组转化成一维数组(数组扁平化-配合递归)
 - 将多维数组转化成一维数组(数组扁平化-配合递归)
 - 对象里的属性求和