按属性获取字典对象

时间:2014-03-12 12:41:24

标签: javascript jquery

我有一本字典:

[ object , object, object, object, object  ]

object包含:id和name。

我有一个ID(' 123456'),我想获得带有此ID的对象。

是否有其他解决方案如何在没有for对象的情况下进行此操作?

任何帮助表示赞赏!

3 个答案:

答案 0 :(得分:3)

讨厌loops,然后转到recursion,我只是假设你在一个名为xArr的变量中拥有该数组

var xObj = check(0,"123456"); 

function check(cnt,id) {
 if(xArr[cnt].id === id)
  {
    return xArr[cnt];
  }
 else if(cnt === xArr.length - 1) {
    return null;
  }
 else {
    cnt += 1;
    return check(cnt, id);
  }    
}

答案 1 :(得分:2)

这是一个数组,您可以使用jQuery.grep来获取ID为"123456"的元素。

var result = $.grep(arr, function(obj) {
  return obj.id === '123456';
});

数组还提供了.filter方法(浏览器不支持polyfill):

var result = arr.filter(function(obj) {
  return obj.id === '123456';
});

答案 2 :(得分:1)

如果您想使用vanilla JS方法,可以使用filter。这与$.grep几乎相同。

var result = arr.filter(function (obj) {
  return obj.id === '123456';
});