【发布时间】:2020-05-11 02:47:15
【问题描述】:
我有一个对象数组的对象数组。 我想删除对象数组的对象数组中的重复对象。
var arr = {
"departsObj": {
"departments": [
{
"department": [
{
"groupID": "21",
"groupName": "group21",
"requestDate": "2020-01-24",
},
{
"groupID": "28",
"groupName": "group28",
"requestDate": "2020-01-24",
}
]
},
{
"department": [
{
"groupID": "28",
"groupName": "group28",
"requestDate": "2020-01-24",
},
{
"groupID": "20",
"groupName": "group20",
"requestDate": "2020-01-24",
},
{
"groupID": "30",
"groupName": "group30",
"requestDate": "2020-01-24",
}
]
}
]
}
}
我需要返回数组:
{
"departsObj": {
"departments": [
{
"department": [
{
"groupID": "21",
"groupName": "group21",
"requestDate": "2020-01-24",
},
{
"groupID": "28",
"groupName": "group28",
"requestDate": "2020-01-24",
}
]
},
{
"department": [
{
"groupID": "20",
"groupName": "group20",
"requestDate": "2020-01-24",
},
{
"groupID": "30",
"groupName": "group30",
"requestDate": "2020-01-24",
}
]
}
]
}
}
我试过了:
const arr = departsObj.departments;
var result = arr.reduce((unique, o) => {
if(!unique.some(obj => obj.department === o.department)) {
unique.push(o);
}
return unique;
},[]);
return result;
但我仍然返回重复的对象。 我正在努力从数组对象的对象数组中返回值。
任何帮助将不胜感激。
提前致谢。
【问题讨论】:
标签: javascript arrays object duplicates