方法一:
1 | var str="aaaaakkkkkkssssaaggggssjjjjjsssaa"; |
方法二:
1 | var str="aaaaakkkkkkssssssjjjjjsssaa"; |
如果刚看这个方法不理解,可以先熟悉一下reduce方法回掉函数各个参数的意义。
reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。
语法: array.reduce(function(total, currentValue, currentIndex, arr), initialValue)
total 必需。初始值, 或者计算结束后的返回值。
currentValue 必需。当前元素
currentIndex 可选。当前元素的索引
arr 可选。当前元素所属的数组对象。
initialValue:可选项,其值用于第一次调用 callback 的第一个参数。如果没有设置初始值,则将数组中的第一个元素作为初始值。==空数组调用reduce时没有设置初始值将会报错。==
看一下以下这编程题可以帮助理解reduce方法
1 | 查找数组对象中 age 大于 18 对象 |