如何在JS“反应式选择器”中删除重复项

问题描述

请找到以下数据。这是我仅需要Id:1数据。有些Id没有值,有些Id还有另一个值。

实际数据:

data[
 {Id: 1,Specialization: "General",ImageUrl: "http://122.175.55.55:8080/storage/loadfile/specialization/doctor.png",Description: "General",IsActive: true,…}
 {Id: 2,Specialization: "Cardiology",ImageUrl: "http://122.175.55.55:8080/storage/loadfile/specialization/heartbeat.png",Description: "Hart Related",…}
 {Id: 3,Specialization: "Gynaecology",ImageUrl: "http://122.175.55.55:8080/storage/loadfile/specialization/nephrology.png",Description: "Gynaecology",…}
 {Id: 4,Specialization: "Orthopedic",ImageUrl: "http://122.175.55.55:8080/storage/loadfile/specialization/mental.png",Description: "Bones",…}
 {Id: 1,…}
]

我需要这样

data[
{Id: 1,…}
{Id: 2,…}
{Id: 3,…}
]

解决方法

您可以尝试这样:

const data = [
 {Id: 1,Specialization: "General",ImageUrl: "http://122.175.55.55:8080/storage/loadfile/specialization/doctor.png",Description: "General",IsActive: true,…}
 {Id: 2,Specialization: "Cardiology",ImageUrl: "http://122.175.55.55:8080/storage/loadfile/specialization/heartbeat.png",Description: "Hart Related",…}
 {Id: 3,Specialization: "Gynaecology",ImageUrl: "http://122.175.55.55:8080/storage/loadfile/specialization/nephrology.png",Description: "Gynaecology",…}
 {Id: 4,Specialization: "Orthopedic",ImageUrl: "http://122.175.55.55:8080/storage/loadfile/specialization/mental.png",Description: "Bones",…}
 {Id: 1,…}
]

const getUniqueData = (data) => {
  const indexes = [];
  const uniqueData = [];
  
  for(let i = 0; i < data.length; i++){
    if(indexes.contains(data[i].id)){
      continue; 
    } else {
      indexes.push(data[i].id);
      uniqueData.push(data[i]);
    }
  }
  
  return uniqueData;
}

const uniqueData = getUniqueData(data);

这当然是一个原始的解决方案。对于此类情况,您可以尝试使用javascipt集或lodash库。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...