当前位置:首页 > 前端 > es6/js/jQuery技巧

用javascrip或es6的Array.reduce()方法计算一个字符串中每个字符出现的次数

方法一(推荐):

用es6的Array.reduce()函数配合“…”扩展符号可以更方便的处理该问题。

  1. const str = 'abcdabcdabdeedeegjh'
  2. const newArr = str.split('').reduce((res, c) => {
  3. res[c]?res[c]++:res[c]=1;
  4. return res
  5. }, {})
  6. console.log(newArr)

结果:{ a: 3, b: 3, c: 2, d: 4, e: 4, g: 1, h: 1, j: 1 }


方法二javascript Array配合Object的方式:

  1. const arr="abcdaabc";
  2. let counter = {};
  3. for (let i = 0, len = arr.length; i < len; i++ ) {
  4. counter[arr[i]] ? counter[arr[i]]++ : counter[arr[i]] = 1;
  5. }
  6. console.log(counter);

结果:{a: 3, b: 2, c: 2, d: 1}

读后有收获可以支付宝请作者喝咖啡
< 上一篇 下一篇 >
文章评论
湘ICP备15005320号-1 似懂非懂 Powered by doyo. 网站地图
返回顶部