对数组中存放对象类型的元素进行去重
const arr=[
{value:'101',name:'小明'},
{value:'1102',name:'小红'},
{value:'111',name:'小王'},
{value:'55',name:'小李'},
{value:'101',name:'小三'},
];
比如上面这个数据,我们要对arr中的value进行比较,去掉value重复的对象元素,去重的思想就是,我们要新建一个对象用来存放arr中的value这个属性的值(将arr中的value值作为新创建的对象的属性),后面就判断这个属性有没有存在,如果没有存在,就将元素添加到新数组,并且给创建的对象增加这个属性,那么如果有重复的值,就不会再添加了
const result =[];//存放去重的数组
const obj={};//记录result中有没有存放的arr中的数据
arr.forEach(item=>{
if(!obj[item.value]){
result.push(item);
obj[item.value]=true;
}
})
这个样我们打印一下,输出的结果已经把value相同的值去掉了