2016-12-26 2 views
0

У меня есть список динамических объектов. Динамический, поскольку числовой идентификатор объектов под данными всегда изменяется/увеличивается. У меня уже есть переменная, которая определяется как количество объектов под данными. Переменный является следующимПоиск объекта через список объектов путем нахождения определенного значения

var numOfFruits = Object.keys(Fruits.data).length 

Затем пройти через каждый объект в соответствии с данными, которые я запускать эту петлю

for(numOfFruits in Fruits.data) { 
    var objectsUnderData = Fruits.data[numOfFruits]; 
} 

Я хочу, чтобы иметь возможность запрашивать числовой идентификатор объекта, содержащий определенное значение такого как «Банан», «Яблоко» или «Виноград». Поэтому я хочу, чтобы иметь возможность использовать заранее определенную переменную как var name = "Apple" и получить идентификатор объекта, которого в

{ 
    "type": "fruits", 
    "data": { 
    "1": { 
     "id": 1, 
     "key": "Banana", 
     "name": "Banana", 
    }, 
    "2": { 
     "id": 2, 
     "key": "Orange", 
     "name": "Orange", 
    }, 
    "3": { 
     "id": 3, 
     "key": "Grape", 
     "name": "Grape", 
    }, 
    "4": { 
     "id": 4, 
     "key": "Apple", 
     "name": "Apple", 
    } 
} 

}

Мой вопрос:. Как использовать конкретное значение (имя: «Apple», имя: «Банан» и т. Д.), Чтобы найти личность объекта, в котором он находится.

+0

где ваша формулировка проблемы и вопрос? Возьмите несколько минут, чтобы прочитать [ask] – charlietfl

+0

@charlietfl, я сожалею об этом, немного увлекся. Это ясно? Я попытался объяснить, что я хочу сделать, чтобы мои лучшие способности. Прошу прощения, если его неясно. – L3gionOfDooM

ответ

0

См функция fruitFinder ниже:

function fruitFinder (Fruits, name) { 
 
    for (fruit in Fruits.data) { 
 
    if (Fruits.data[fruit].name == name) { 
 
     return Fruits.data[fruit].id; 
 
    } 
 
    } 
 
} 
 

 
var Fruits = { 
 
    "type": "fruits", 
 
    "data": { 
 
    "1": { 
 
     "id": 1, 
 
     "key": "Banana", 
 
     "name": "Banana", 
 
    }, 
 
    "2": { 
 
     "id": 2, 
 
     "key": "Orange", 
 
     "name": "Orange", 
 
    }, 
 
    "3": { 
 
     "id": 3, 
 
     "key": "Grape", 
 
     "name": "Grape", 
 
    }, 
 
    "4": { 
 
     "id": 4, 
 
     "key": "Apple", 
 
     "name": "Apple", 
 
    } 
 
    } 
 
}; 
 

 
var name = "Apple"; 
 

 
console.log(fruitFinder(Fruits, name));

+0

Большое вам спасибо. Работает очень хорошо! Вы спасатель жизни. – L3gionOfDooM

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