Привет всем.
Я уже сломал себе всю голову этой задачей.
Короче, есть объект в формате json, я перебираю его циклом for и пытаюсь вывести переменную из другого массива. Весь код этого я расписывать не буду, так что я сделал упрощенный пример, выкинув все лишнее из этой задачи.
var fructs = {
'Яблоко' : 'зеленое',
'Банан' : 'желтый',
'Арбуз' : 'зеленый'
}
var object = {
0: {
name : "Яблоко"
},
1: {
name : "Банан"
},
2: {
name : "Арбуз"
}
};
console.log(fructs[object[1].name]); // выводит "желтый""
for (i = 0; i < object.length; i++) {
var color = fructs[object[i].name];
console.log("_" + color); // выводит пустое место
}
Цикл for в данном случае не работает. Понимаю что тут творится какая то нездоровая фигня. Но не могу понять какая. В данном примере объект object - это я так симулировал json, но я не уверен что этот json выглядит именно таким образом.
Но даже если бы это работало, то в переменную color все равно ничего не приходит. Причина этого мне совершенно не понятна, помогите пожалуйста.
---
Дополняю вопрос скрином не из симуляции а из реальной задачи.
console.log(transfer_array_2[json[i].name]); // выводит имя
console.log(transfer_array_2[json[i].name]); // undefined
console.log(transfer_array_2['Стоматологическая поликлиника 3 ']); // выводит то что надо!
Сам вопрос вот в чем.
Почему я не могу вывести данные из массива transfer_array_2 через переменную?