【发布时间】:2016-06-27 05:02:30
【问题描述】:
我有一个这样的对象数组 -
var arr = [
{ type_id: "3", full_empty:"true", quantity:1},
{ type_id: "3", full_empty:"true", quantity:1},
{ type_id: "9", full_empty:"true", quantity:4},
{ type_id: "9", full_empty:"false", quantity:4},
{ type_id: "9", full_empty:"true", quantity:4},
{ type_id: "9", full_empty:"true", quantity:4},
{ type_id: "9", full_empty:"true", quantity:4}
];
我想删除具有相同 type_id 和 full_empty 值的重复项。结果应该是这样的 -
var arr = [
{ type_id: "3", full_empty:"true", quantity:1},
{ type_id: "9", full_empty:"true", quantity:4},
{ type_id: "9", full_empty:"false", quantity:4},
];
我已经搜索并找到了一些解决方案,但其中一些是用于删除重复键或仅基于一个键的重复值来删除重复项。一些需要的外部库。还有一些我无法理解的解决方案。有没有简单的方法在纯 JavaScript 中做到这一点?
编辑以便更好地理解 - 我已阅读此 question 。该问题的公认答案是仅查找一个键的重复项。就我而言,我必须找到多个键的重复项。
【问题讨论】:
-
@Rohit416 我已尝试实施该解决方案。但它只在一个键中搜索重复值。就我而言,我必须在多个键中搜索重复值。
-
但是如果数组是
var arr = [ { type_id: "3", full_empty:"true", quantity:1}, { type_id: "3", full_empty:"true", quantity:2}, ... ];你期望什么结果?
标签: javascript filter