酷代码 AI
菜单
服务商

现有以下一个数组,里面有几个重复的元素,用es6找出重复次数最多的元素,并列出每个元素重复多少次var arr= [“a”,“b”,“c”,“a”,“a”,“b”,“d”,“e”,“f”,“c”,“g”,“d”,“e”,“g”,“a”,“c”,“a”,“h”,“a”];

可以使用ES6中的Map数据结构来解决这个问题。具体步骤如下: 1. 首先遍历数组并将每个元素作为键存储在Map中,同时记录每个元素出现的次数。 2. 找出重复次数最多的元素,可以通过遍历Map中的值找到最大值。 3. 最后再遍历一次Map,找出所有出现次数最多的元素及其重复次数。 下面是具体代码实现: ```javascript const arr = ["a","b","c","a","a","b","d","e","f","c","g","d","e","g","a","c","a","h","a"]; const map = new Map(); arr.forEach(item => { if(map.has(item)){ map.set(item, map.get(item) + 1); } else { map.set(item, 1); } }); let maxCount = 0; map.forEach(value => { if(value > maxCount){ maxCount = value; } }); const mostFrequentElements = []; map.forEach((value, key) => { if(value === maxCount){ mostFrequentElements.push({element: key, count: value}); } }); console.log(mostFrequentElements); ``` 运行以上代码,可以得到结果为: ```javascript [ { element: 'a', count: 6 } ] ``` 表示重复次数最多的元素是'a',重复了6次。 [2024-11-05 20:47:04 | AI写代码神器 | 641点数解答]

相关提问
实用工具查看更多
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]
数独游戏 [娱乐类]
经典推箱子 [娱乐类]
AI摸鱼五子棋 [娱乐类]