0

我需要找出对象数组中是否存在具有特定键的对象:值例如,如果我需要键“id”是唯一的:

arr=[
     {id:1,  attr1:'435',attr2:'sdg'},
     {id:2,  attr3:'4x35',attr2:'sdg'}
    ];

a={id:1,attr2:'nnsklnf'};
b={id:3,attr3:'kldfmlkdblng'};

function isHaveSimilar(_a,_array){
 // ... ???
}

isHaveSimilar(a,arr); // true
isHaveSimilar(b,arr); // false

也许有比粗鲁检查每个元素更简单的方法?谢谢)

4

1 回答 1

0
function hasSimilar(needle, haystack) {
  for (item in haystack) {
    if (haystack[item].id == needle.id) {
      return true;
    }
  }
  return false;
}

hasSimilar(a, arr); // true
hasSimilar(b, arr); // false
于 2012-05-30T11:39:51.683 回答