如何在JavaScript中的对象数组中找到重复项?

如何在JavaScript中的对象数组中找到重复项?,javascript,arrays,duplicates,Javascript,Arrays,Duplicates,我想要实现什么? 因此,我有一个数组,需要检查是否存在重复项,如果发现重复项,我现在想使用console.log显示找到的重复项。我必须加上这段代码是基于函数的 然后,用户将使用前端中的一些输入添加到此阵列,这是我目前已经完成的,但不需要解决此问题 这是我的数组,我想在下面查找数组中是否有重复项 const repeatedNumEvent = { PlayerNumber: this.state.PlayerNumber, eventType: this.state

我想要实现什么?

因此,我有一个数组,需要检查是否存在重复项,如果发现重复项,我现在想使用console.log显示找到的重复项。我必须加上这段代码是基于函数的

然后,用户将使用前端中的一些输入添加到此阵列,这是我目前已经完成的,但不需要解决此问题

这是我的数组,我想在下面查找数组中是否有重复项

  const repeatedNumEvent = {
      PlayerNumber: this.state.PlayerNumber,
      eventType: this.state.eventType
    };
基本上,如果一个新数组对象具有相同的值,则显示重复的值

我假设我必须使用.length函数使用for循环,但我不确定如何实现我的任务

下面是可能的数组数据

{PlayerNumber: "12", eventType: "Goal"}

如果你有任何问题,请在下面提问。谢谢。

下面应该可以。它将循环数组并检查我们是否已经拥有该项。它将根据请求
console.log
,但也会给您留下一系列不同和重复的项目,以便根据需要进行处理

演示:

const数据=[
{玩家编号:“13”,事件类型:“目标”},
{玩家编号:“13”,事件类型:“目标”},
{玩家编号:“12”,事件类型:“目标”},
{玩家编号:“12”,事件类型:“目标”},
{玩家编号:“14”,事件类型:“目标”}
];
让distinct=[];
设重复项=[];
data.forEach((项目、索引、对象)=>{
if(distinct.find(current=>current.PlayerNumber===item.PlayerNumber&¤t.eventType==item.eventType)){
console.info(“找到重复项”);
重复。推送(项目);
}否则{
推(项);
}
});
console.info('duplicates:',duplicates);

console.info('distinct:',distinct)应该可以做到这一点。它将循环数组并检查我们是否已经拥有该项。它将根据请求
console.log
,但也会给您留下一系列不同和重复的项目,以便根据需要进行处理

演示:

const数据=[
{玩家编号:“13”,事件类型:“目标”},
{玩家编号:“13”,事件类型:“目标”},
{玩家编号:“12”,事件类型:“目标”},
{玩家编号:“12”,事件类型:“目标”},
{玩家编号:“14”,事件类型:“目标”}
];
让distinct=[];
设重复项=[];
data.forEach((项目、索引、对象)=>{
if(distinct.find(current=>current.PlayerNumber===item.PlayerNumber&¤t.eventType==item.eventType)){
console.info(“找到重复项”);
重复。推送(项目);
}否则{
推(项);
}
});
console.info('duplicates:',duplicates);

console.info('distinct:',distinct)请发布一个数组数据的示例这不是一个真正的问题,是吗?抱歉@dwjohnston,只是一个习惯lol@Chev我已经为你更新了我的描述。这是我使用console.log()得到的一个示例,请给我们看一些代码。我没有看到任何数组,只是一个具有两个属性的简单对象。请发布一个数组数据的示例。这不是一个真正的反应问题,是吗?抱歉@dwjohnston,只是一个习惯lol@Chev我已经为你更新了我的描述。这是我使用console.log()得到的一个示例,请给我们看一些代码。我没有看到任何数组,但是一个具有两个属性的简单对象。也可以使用lodash u0.isEqual来比较对象。当然,这次希望保持普通,但强烈推荐也可以使用lodash 0.isEqual来比较对象。当然,这次希望保持普通,但强烈推荐