我有一个数组列表,我需要隐藏数组的重复项
{
"company_name": "SERVICE INDUSTRIES LTD.",
"claim_id": "2017\/04\/LHRHHDP00015-2018-00702",
},
{
"company_name": "KARACHI CHAMBER OF COMMERCE & INDUSTRY",
"claim_id": "2018\/03\/HOHHDP00013-2019-00098",
},
{
"company_name": "PAKISTAN RED CRESCENT SOCIETY",
"claim_id": "2017\/04\/LHRHHDP00015-2018-00702",
},
{
"company_name": "SERVICE INDUSTRIES LTD.",
"claim_id": "2018\/04\/LHRHHDP00022-2019-01292",
},
{
"company_name": "U MICROFINANCE BANK LTD",
"claim_id": "2017\/04\/LHRHHDP00015-2018-00702",
}
这是示例数组,我需要隐藏具有重复的Claim_id的数组。
答案 0 :(得分:1)
您可以使用filter
和findIndex
查找重复项。如果索引不等于当前项目,则存在重复项。
对性能的影响最大为数组大小的1.5倍:
const unique = data.filter((item, index) =>
data.findIndex(({ claim_id }) => item.claim_id === claim_id) === index
);
答案 1 :(得分:0)
要轻松解决此问题,请使用以下策略:
所以......
const dic = {}
for (const item of originalArray) {
dic[item.claim_id] = item
}
const groupedArray = Object.values(dic)
唯一的问题是...打字稿在哪里?我们使用本机JS并管理得很好:)