Loading...
JavaScript | json в js
Есть json объект:
javascript
   const json = { "один": "1", "два": "2", "три": "3" }   
Я запрашиваю первую переменную таким образом:
javascript
   console.log(json[0])   
Почему выдаёт значение undefined ? Объясните пожалуйста, я тупой *DASH*
mrDima , дело как раз в том что это объект, а не массив. В данном случае json[0] - вернет значение по ключу 0, который собственно и не определен, для обращения по индексу можно использовать Object.keys.

Изображение

------
84334_json.png (4.4 Kb)
Скачиваний: 194
steel97 , Спасибо!
steel97 , Ещё одна проблема, названия переменных могут повторяться:
javascript
   const json = { "один": "1", "один": "2", "два": "3", "два": "4", "три": "5", "три": "6" }   

________
посл. ред. 08.11.2022 в 20:50; всего 2 раз(а); by mrDima
🤦♂️
mrDima , это уже немного странно, ключи на то и ключи, что бы быть уникальными. По идее здесь изначально надо было массив делать
json
   const json = [{ "один": "1"}, {"один": "2"}, {"два": "3"}, {"два": "4"}, {"три": "5"}, {"три": "6" }]   
в таком случае можно по индексу получить нужный результат
javascript
   const element = json[0] const elementFK = Object.keys(element)[0] console.log(`${elementFK} = ${element[elementFK]}`);   
Ещё можно сделать примерно так:
javascript
   const json = [{"key": "один", "value": "1"}, {"key": "один", "value": "2"}, {"key": "два", "value": "3"}, {"key": "два", "value": "4"}] console.log(`${json[0].key} = ${json[0].value}`);   
Онлайн: 2
Время:
Gen. 0.091
(c) Bym.Guru 2010-2026