запросить объект javascript - PullRequest
6 голосов
/ 18 января 2012

У меня есть JSON-строка, которая переходит к объекту javascript

{
   "results":[
      {
        "id":"460",
        "name":"Widget 1",
        "loc":"Shed"
      },{
        "id":"461",
        "name":"Widget 2",
        "loc":"Kitchen"
      }]
}

Есть ли способ «запросить» эти данные в javascript, чтобы я мог найти идентификатор 460 и получить имя и возвращенный лок (кроме простого обхода всего объекта)? У меня есть jQuery и Prototypejs, доступные для использования.

Ответы [ 2 ]

18 голосов
/ 18 января 2012

DEMO

Массивы JavaScript имеют встроенный метод фильтрации :

var valuesWith460 = obj.results.filter(function(val) {
    return val.id === "460";
});

(для поддержкив старых браузерах вы захотите взять шайбу по ссылке выше)

1 голос
/ 18 января 2012
function getInfoByID( id )
  var object = { ... };
  for(var x in object.results) {
    if(object.results[x].id == id) {
      return [object.results[x].loc, object.results[x].name];
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...