如何使用javaScript从对象数组中删除dublicate值?

如何使用javaScript从对象数组中删除dublicate值?,javascript,object,Javascript,Object,我有这个对象数组,我的目标是从values数组中删除双值,我希望结果是[{name:'test1',values:['35,5','35,2','35,3']},{name:'test2',values:['33,2','34,3',32,5']} 我尝试了以下解决方案,但不起作用,你有什么建议吗?提前谢谢 让arr=[{name:'test1',value:['35,5','35,2','35,2','35,3','35,5']}, {名称:'test2',值:['35,1','35,1',

我有这个对象数组,我的目标是从
values
数组中删除双值,我希望结果是
[{name:'test1',values:['35,5','35,2','35,3']},{name:'test2',values:['33,2','34,3',32,5']}
我尝试了以下解决方案,但不起作用,你有什么建议吗?提前谢谢

让arr=[{name:'test1',value:['35,5','35,2','35,2','35,3','35,5']},
{名称:'test2',值:['35,1','35,1','33,2','34,3','32,5']]
让uniqueArray=arr.values.filter(函数(项目,位置){
返回arr.values.indexOf(item.values)=pos;
})
console.log(uniqueArray)
} 

}
通过基于阵列创建新的阵列,您可以轻松地从阵列中删除重复项

集合对象是值的集合。可以按插入顺序遍历集合的元素。集合中的值只能出现一次;它在该系列中是独一无二的

如果要在数组中显示结果,只需使用扩展语法即可,例如:

让arr=[{
名称:“test1”,
值:['35,5','35,2','35,2','35,3','35,5']
},
{
名称:“test2”,
值:['35,1','35,1','33,2','34,3','32,5']
}
];
const uniqueArr=arr.reduce((累计,el)=>{
//将所有原始对象特性复制到新对象
常量对象={
…艾尔
};
//通过创建集合结构从值中删除重复项
//然后将其传播回一个空数组
obj.values=[…新集合(obj.values)];
累积推力(obj);
返回累计;
}, []);

uniqueArr.forEach(el=>console.dir(el))通过基于阵列创建新的阵列,可以轻松地从阵列中删除重复项

集合对象是值的集合。可以按插入顺序遍历集合的元素。集合中的值只能出现一次;它在该系列中是独一无二的

如果要在数组中显示结果,只需使用扩展语法即可,例如:

让arr=[{
名称:“test1”,
值:['35,5','35,2','35,2','35,3','35,5']
},
{
名称:“test2”,
值:['35,1','35,1','33,2','34,3','32,5']
}
];
const uniqueArr=arr.reduce((累计,el)=>{
//将所有原始对象特性复制到新对象
常量对象={
…艾尔
};
//通过创建集合结构从值中删除重复项
//然后将其传播回一个空数组
obj.values=[…新集合(obj.values)];
累积推力(obj);
返回累计;
}, []);

uniqueArr.forEach(el=>console.dir(el))你能解释为什么你认为这应该有效吗?@ScottHunter如果运行代码的魔法生物能聪明一点…你能解释为什么你认为这应该有效吗?@ScottHunter如果运行代码的魔法生物能聪明一点。。。