首页 > 解决方案 > 计算字符串在数组中出现的次数

问题描述

需要计算数组中字符串的出现次数

userList=["abc@gmail.com","bca@gmail.com","abc@gmail.com"]

需要获取每个字符串的计数

let userList=["abc@gmail.com","bca@gmail.com","abc@gmail.com"]

预期的 :[{"abc@gmail.com":2},{"bca@gmail.com":1}]

标签: javascriptarrays

解决方案


var userList=["abc@gmail.com","bca@gmail.com","abc@gmail.com"];

var result = Object.values(userList.reduce((acc, c)=>{
    if(!acc.hasOwnProperty(c)) { acc[c] = {[c]:0};}
    acc[c][c] += 1; 
    return acc;
}, {}));

console.log(result);

希望这对你有帮助!


推荐阅读