如果满足条件,则从json获取Key的值

时间:2017-07-24 13:58:56

标签: javascript arrays json

我有一个具有以下结构的JSON

                   [
                          {"key":1,"name":"aaa"},
                          {"key":2,"name":"bbb"}

               ]

我需要获取其键为2的对象,我必须将其作为单独的数组(如

                         [

                          {"key":2,"name":"bbb"}

                         ]
例如,我只给了2个对象,它可以超过100个。有人可以帮助我以有效的方式实现这一点

2 个答案:

答案 0 :(得分:1)

Array#find可能会有所帮助。

let obj = arr.find(v => v.key == 2);

如果要将其存储在数组中:

let obj = [arr.find(v => v.key == 2)];

或循环方法(当条件满足时 - 打破循环):

let arr = [{
    "key": 1,
    "name": "aaa"
  },
  {
    "key": 2,
    "name": "bbb"
  }
];

let res = [];

for (let elem of arr) {
  if (elem.key == 2) {
    res.push(elem);
    break;
  }
}

console.log(res);

答案 1 :(得分:0)

使用filter

var result = data.filter(function(val){
   return val.key==2;
});

我希望能提供帮助:)