开发者社区 问答 正文

面试题:用js实现读取出字符串中每个字符重复出现的次数?

如字符串arr="abcdaabc",请用js读取出arr字符串中每个字母重复出现的次数分别是多少?

展开
收起
a123456678 2016-03-13 11:45:46 2461 分享 版权
2 条回答
写回答
取消 提交回答
  • let str = "qqerttqetwurertwuertyuertuewrtq";
    let obj = {};
    
    for(let i of str){
      obj[i] = obj[i] ? obj[i] + 1 : 1;
    }
    
    console.log(obj)
    
    2020-05-11 18:49:38
    赞同 1 展开评论
  • 坐等更好方案:

    var arr = 'abcdaabc';
    
    var info = arr
        .split('')
        .reduce((p, k) => (p[k] ? p[k]++ : p[k] = 1, p), {});
    
    console.log(info);//{ a: 3, b: 2, c: 2, d: 1 }
    2019-07-17 19:02:23
    赞同 展开评论