对象数组中的javascript唯一键值

时间:2012-05-30 11:21:17

标签: javascript arrays key unique associative

我需要找出,是否存在具有特定键的对象数组:value 例如,如果我需要键'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

也许有一些比粗略检查每个元素更简单的方法? THX)

1 个答案:

答案 0 :(得分: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