在 Javascript 中,我试图获取一个初始的数值数组并计算其中的元素。理想情况下,结果将是两个新数组,第一个指定每个唯一元素,第二个包含每个元素出现的次数。不过,我愿意接受有关输出格式的建议。
例如,如果初始数组是:
5, 5, 5, 2, 2, 2, 2, 2, 9, 4
然后将创建两个新数组。第一个包含每个唯一元素的名称:
5, 2, 9, 4
第二个将包含该元素在初始数组中出现的次数:
3, 5, 1, 1
因为数字 5 在初始数组中出现了 3 次,所以数字 2 出现了 5 次,9 和 4 都出现了一次。
我已经寻找了很多解决方案,但似乎没有任何效果,而且我自己尝试过的一切最终都变得异常复杂。任何帮助,将不胜感激!
谢谢 :)
您可以使用一个对象来保存结果:
const arr = [5, 5, 5, 2, 2, 2, 2, 2, 9, 4];
const counts = {};
for (const num of arr) {
counts[num] = counts[num] ? counts[num] + 1 : 1;
}
console.log(counts);
console.log(counts[5], counts[2], counts[9], counts[4]);
所以,现在你的counts
对象可以告诉您特定数字的计数:
console.log(counts[5]); // logs '3'
如果你想获取成员数组,只需使用keys()
功能
keys(counts); // returns ["5", "2", "9", "4"]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)