通过匹配其属性值来选择数组

时间:2014-04-28 07:04:58

标签: javascript arrays json

var array = [
{'a':1,'b':2},
{'a':1,'b':3},
{'a':1,'b':0},
]

我想返回其'属性b等于2

的数组

2 个答案:

答案 0 :(得分:5)

您可以像这样使用Array.prototype.filter

var result = array.filter(function(currentObject) {
    return currentObject.b === 2;
});

console.log(result);
# [ { a: 1, b: 2 } ]

您也可以使用plain for循环执行此操作,例如

var result = [];
for (var i = 0; i < array.length; i += 1) {
    if (array[i].b === 2) {
        result.push(array[i]);
    }
}

console.log(result);
# [ { a: 1, b: 2 } ]

答案 1 :(得分:0)

var result;
for (var i = 0; i < array.length; i += 1) {

     if (array[i].b === 2) {
         result = array[i];
         break;
     }

}

console.log(result);

使用break来改变一些。