2009-07-25 6 views
2

мне нужно узнать, если идентификатор происходит в моем объекте JSON, например:Проверьте наличие значения в объекте JSON

{ 
    "requested": "2009-07-25T14:12:25+01:00", 
    "channels": [ 
    {"id": 1, "name": "General", "created": "2009-07-25 14:00:02"} 
    ] 
} 

В частности, мне нужно проверить, если мой идентификатор (например, 2) происходит в channels.i.id. Как это может быть сделано?

ответ

4

Попробуйте это:

var id = 2, 
    found = false; 
for (var i=0; i<channels.length; i++) { 
    if (channels[i].id == id) { 
     found = true; 
     break; 
    } 
} 
0

Или более кратко и, вероятно, быстрее:

var id = 2; 
for (var found, i = channels.length; i && !(found = channels[--i].id === id);) 
    ; 
+0

@ ответ Гамбо является гораздо яснее, хотя, и я сомневаюсь, что есть существенная разница скорости, если таковые имеются. –

+0

Я думаю, что вы имели в виду 'channels [- i] .id' – Paulpro

+0

. Ваше правильное спасибо, я редактировал код. – HBP

Смежные вопросы