首页 > 解决方案 > 使用地图获取数组中每个项目的数量

问题描述

我正在尝试获取每个字符串项在数组中出现的次数并使用 Map 将其打印出来。我基本上是从 firebase 函数中读取数据,但现在,我正在使用一个数组来测试代码以获取每个项目的出现。我从这里尝试了以下代码,但它不起作用,我不知道为什么:

<script>
var appVersion= ["5012", "5021", "5012", "5011", "5012", "5021"];

var count = new Map();

appVersion.forEach(version=> count.set(count.get(version) + 1));

function show(versions) {
         document.write(versions);
         document.write("<br>");
      }
    count.forEach(show);
</script>

任何帮助或建议将不胜感激。

标签: javascriptforeachhashmap

解决方案


也许这有帮助

var appVersion= ["5012", "5021", "5012", "5011", "5012", "5021"];

let counter = {}
for (version of appVersion){
    counter[version] = 1 + (counter[version] || 0)
}

console.log(counter);


推荐阅读