取出特定属性值的重复项!!!
let people = [
{
id : '001',
name : 'judy',
age : '18'
},
{
id : '001' ,
name : 'wayne',
age : "19"
},
{
id : '002',
name : 'zhangsan',
age :"30"
},
{
id : '003',
name : 'lisi',
age : "20"
}
]
function func4(objArray) {
var result = [];//去重后返回的结果数组
var temp = {};//临时对象
//将对象数组中每一项的name值作为属性,若temp不拥有此属性时则为temp添加此属性且将其值赋为true,并将这一项push到结果数组中
for(var i=0;i<objArray.length;i++){
var myname = objArray[i].id;
if(temp[myname]){//如果temp中已经存在此属性名,则说明遇到重复项
continue;//不继续执行接下来的代码,跳转至循环开头
}
temp[myname] = true;//为temp添加此属性(myname)且将其值赋为true
result.push(objArray[i]);//将这一项复制到结果数组result中去
}
return result;
}
//id是唯一的
console.log(fun4(people))
let people = [
{
id : '001',
name : 'judy',
age : '18'
},
{
id : '002',
name : 'zhangsan',
age :"30"
},
{
id : '003',
name : 'lisi',
age : "20"
}
]