gpt4 book ai didi

javascript - 使用纯 JavaScript 获取数组的重复项

转载 作者:行者123 更新时间:2023-11-30 10:59:04 26 4
gpt4 key购买 nike

我有这个数组(这是一个示例),我想获取重复项并将其插入另一个数组。

let arr = ["17: Mega Sena", "16: Mega Sena", "15: Mega Sena", "11: Dia de Sorte", "11: Dia de Sorte", "16: Mega Sena"]

我尝试用 foreach 循环并得到这个:

我的代码:

var counts = [];
arr.forEach(function(x) {

counts[x] = (counts[x] || 0)+1

});

输出:

enter image description here

乍一看这正是我想要的,但我需要遍历它以隔离索引和值。问题是我没有得到任何索引,而且我无法遍历它,因为长度为 0。

然后我尝试了第二个选项,将值保存为对象并将它们推送到一个新数组中。但在这种情况下,我只得到值而不是键。

代码:

1-

var counts = [];
var counts2 = [];
arr.forEach(function(x) {

let obj = {x: (counts[x] || 0)+1};

counts2.push(obj);

});

2-

var counts = [];
var counts2 = [];
arr.forEach(function(x) {

let obj = {x: (counts[x] || 0)+1};

counts[x] = (counts[x] || 0)+1

counts2.push(obj);

});

输出 1:

enter image description here

输出 2:

enter image description here

我做错了什么?

我需要的结果是获取数组中每个项目的数量,并合并重复的项目。但我需要知道有多少个,而不仅仅是合并。

最佳答案

counts 对象的索引是字符串。使用 Object.keys 获取键列表。

screenshot of JavaScript console

关于javascript - 使用纯 JavaScript 获取数组的重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58701955/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com