Задать вопрос

Почему не находит карту в массиве?

Есть код:
function ss() {
    var data = [{
	"24KALT": {
		"md5": "f6efd002536cc08a8fe09d3756e1d625",
		"storageType": 0,
		"url": "",
		"version": 2
	},
	"24K": {
		"md5": "a913b583f0c5b7a2966c62d6e315b3e6",
		"storageType": 0,
		"url": "",
		"version": 2
	}
}];
var val = data.shift();
var kk = document.getElementById('search').value;
 alert(val.kk.version);
}

Когда я ввожу в инпут например 24KALT и нажимаю кнопку выполнения функции ss(),
то по идеи должно выводить version этой карты, а вместо этого в консоли ошибка "version is undefined", что у меня не так? Что делать?
  • Вопрос задан
  • 54 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Решения вопроса 1
@eandr_67
web-программист (*AMP, Go, JavaScript, вёрстка).
alert(val[kk].version);
Если val.kk.version, то обращение будет к полю c именем "kk", а не к полю, имя которого находится в переменной kk.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы