JS累加重复字符数量


reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。

const str = 'aaaaabbcddddddee'

const count = str.split('').reduce((prev, cur) =>{
  prev[cur] = (prev[cur] || 0) + 1
  return prev
}, {})

console.log(count)

输出结果:{ a: 5, b: 2, c: 1, d: 6, e: 2 }

 

注意: reduce() 对于空数组是不会执行回调函数的。