2014-10-20 2 views
0

у меня есть этот объект в ЯШАХ:Получить данные одного порядка JS объекта

var Categories = { 

    1: { 'id': 1, 'name': 'Uomo', 'has_child': 1 }, 
     5: { 'id': 4, 'name': 'Abbigliamento', 'has_child': 1 }, 
      10: { 'id': 9, 'name': 'Abiti' }, 
      15: { 'id': 10, 'name': 'Camicie' }, 
      20: { 'id': 11, 'name': 'Maglieria' }, 
      25: { 'id': 12, 'name': 'Pantaloni' }, 
      30: { 'id': 13, 'name': 'Topwear', 'end': 1 }, 
     35: { 'id': 5, 'name': 'Scarpe' }, 
     40: { 'id': 6, 'name': 'Accessori' }, 
     45: { 'id': 7, 'name': 'Sportivo' }, 
     50: { 'id': 8, 'name': 'Intimo', 'end': 1 }, 
    55: { 'id': 2, 'name': 'Donna', 'has_child': 1 }, 
     60: { 'id': 14, 'name': 'Abbigliamento', 'has_child': 1 }, 
      65: { 'id': 20, 'name': 'Abiti' }, 
      70: { 'id': 21, 'name': 'Camicie' }, 
      75: { 'id': 22, 'name': 'Maglieria' }, 
      80: { 'id': 23, 'name': 'Gonne' }, 
      85: { 'id': 24, 'name': 'Pantaloni' }, 
      90: { 'id': 25, 'name': 'Topwear', 'end': 1 }, 
     95: { 'id': 15, 'name': 'Scarpe' }, 
     100: { 'id': 16, 'name': 'Borse & Accessori' }, 
     105: { 'id': 17, 'name': 'Gioielli' }, 
     110: { 'id': 18, 'name': 'Sportivo' }, 
     115: { 'id': 19, 'name': 'Intimo', 'end': 1 }, 
    120: { 'id': 29, 'name': 'Bimbo', 'has_child': 1 }, 
     125: { 'id': 32, 'name': '0-24 mesi' }, 
     130: { 'id': 33, 'name': '3-8 anni' }, 
     135: { 'id': 34, 'name': '9-16 anni', 'end': 1 }, 
    140: { 'id': 3, 'name': 'Bimba', 'has_child': 1 }, 
     145: { 'id': 26, 'name': '0-24 mesi' }, 
     150: { 'id': 27, 'name': '3-8 anni' }, 
     155: { 'id': 28, 'name': '9-16 anni', 'end': 1 } 

}; 

Теперь есть сложный ... Я получаю переменный, которую мы называем CATEGORY_ID, которые содержат идентификатор категории. Теперь с этим ID я должен получить «имя» соответствующей категории.

Ex, если category_id - 10, мне нужно получить «Camicie», если мне 7, я должен получить «Sportivo».

Я не могу найти правильный код, чтобы сделать это ...

+0

@Pointy Он действителен для литерала объекта (например, 'x = {1: 2}'), а не JSON. – user2864740

+0

Может быть недействительным JSON, но это действительный объект JS. – TheDude

+0

whoa 'mind == blown' узнайте что-нибудь каждый день – Pointy

ответ

0

Итерация по клавишам и проверить свойства:

function findNameFromId(id) { 
    for (var key in Categories) { 
     if (Categories[key].id == id) { 
      return Categories[key].name; 
     } 
    } 
} 

Теперь вы можете назвать это:

var name = findNameFromId("10"); //returns Camicie 
+0

Спасибо за ответ. 10 баллов;) – user3849948

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