Javascript 使用lodash获取数组中的重复对象

Javascript 使用lodash获取数组中的重复对象,javascript,angular,Javascript,Angular,我试图用下面的方法来获得重复记录,但我得到的是唯一的过滤记录,这意味着只有uniq记录才能得到 var filtered = _.uniqWith(form_data.itemRows, _.isEqual); ArrayList: [ { "PlanId": "", "Id": "", "Type": "Beverages", "Beverages": "2019/12/7 11:40", "Frequ

我试图用下面的方法来获得重复记录,但我得到的是唯一的过滤记录,这意味着只有uniq记录才能得到

var filtered = _.uniqWith(form_data.itemRows, _.isEqual);
ArrayList:

 [
    {
        "PlanId": "",
        "Id": "",
        "Type": "Beverages",
        "Beverages": "2019/12/7 11:40",
        "Frequency": 1
    },
    {
        "PlanId": "",
        "Id": "",
        "Type": "Medication",
        "Beverages": "2019/12/7 11:30",
        "Frequency": 1
    },
    {
        "PlanId": "",
        "Id": "",
        "Type": "Medication",
        "Beverages": "2019/12/7 11:30",
        "Frequency": 1
    }
]
键入、饮料、频率信息以获取重复记录。

这样您就可以做到这一点

让jsonArray=[
{
“PlanId”:“,
“Id”:“,
“类型”:“饮料”,
“活动时间”:“2019/12/7 11:40”,
“频率”:1
},
{
“PlanId”:“,
“Id”:“,
“类型”:“药物”,
“活动时间”:“2019/12/7 11:30”,
“频率”:1
},
{
“PlanId”:“,
“Id”:“,
“类型”:“药物”,
“活动时间”:“2019/12/7 11:30”,
“频率”:1
}
]
让结果=\ u0.filter(
_.uniq(
_.map(jsonArray,函数(项){
如果(u.filter(jsonArray{
PlanId:item.PlanId,
Id:item.Id,
类型:item.Type,
ActivityTime:item.ActivityTime,
频率:项目。频率
})(长度>1){
退货项目
}
返回false;
})),
函数(值){返回值;});
console.log(结果)
这样你就可以做到

让jsonArray=[
{
“PlanId”:“,
“Id”:“,
“类型”:“饮料”,
“活动时间”:“2019/12/7 11:40”,
“频率”:1
},
{
“PlanId”:“,
“Id”:“,
“类型”:“药物”,
“活动时间”:“2019/12/7 11:30”,
“频率”:1
},
{
“PlanId”:“,
“Id”:“,
“类型”:“药物”,
“活动时间”:“2019/12/7 11:30”,
“频率”:1
}
]
让结果=\ u0.filter(
_.uniq(
_.map(jsonArray,函数(项){
如果(u.filter(jsonArray{
PlanId:item.PlanId,
Id:item.Id,
类型:item.Type,
ActivityTime:item.ActivityTime,
频率:项目。频率
})(长度>1){
退货项目
}
返回false;
})),
函数(值){返回值;});
console.log(结果)

你可以通过这种方式-
const数组列表=[
{
“PlanId”:“,
“Id”:“,
“类型”:“饮料”,
“饮料”:“2019/12/7 11:40”,
“频率”:1
},
{
“PlanId”:“,
“Id”:“,
“类型”:“药物”,
“饮料”:“2019/12/7 11:30”,
“频率”:1
},
{
“PlanId”:“,
“Id”:“,
“类型”:“药物”,
“饮料”:“2019/12/7 11:30”,
“频率”:1
}
];
const returnObjects=u.chain(arrayList)
.groupBy((elem)=>JSON.stringify(elem))
.reduce((nObj,obj)=>{
如果(obj.length>1)无推力(uj.head(obj));
返回nObj
}, [])
.value();
console.log(返回对象)

你可以通过这种方式-
const数组列表=[
{
“PlanId”:“,
“Id”:“,
“类型”:“饮料”,
“饮料”:“2019/12/7 11:40”,
“频率”:1
},
{
“PlanId”:“,
“Id”:“,
“类型”:“药物”,
“饮料”:“2019/12/7 11:30”,
“频率”:1
},
{
“PlanId”:“,
“Id”:“,
“类型”:“药物”,
“饮料”:“2019/12/7 11:30”,
“频率”:1
}
];
const returnObjects=u.chain(arrayList)
.groupBy((elem)=>JSON.stringify(elem))
.reduce((nObj,obj)=>{
如果(obj.length>1)无推力(uj.head(obj));
返回nObj
}, [])
.value();
console.log(返回对象)

您想从数组中删除重复的对象还是只需要重复的对象值我只需要重复的对象值。我已经添加了解决方案,请检查@bansi29您想从数组中删除重复的对象还是只需要重复的对象值我只需要重复的对象值添加了解决方案请检查@Bansi29Hi@Narendra不仅按类型检查,按时间和活动时间和频率检查,获取重复记录。Hi@Narendra不仅按类型检查,按时间和活动时间和频率检查,获取重复记录。