Извлечение данных из подмассива JSON в javascript, где идентификатор начинается с целого числа - PullRequest
3 голосов
/ 26 апреля 2010

Я, должно быть, упускаю что-то простое здесь, но у меня возникают проблемы с получением данных из ответа массива JSON. Я могу получить доступ к объектам с идентификаторами, которые начинаются с букв, но не с цифр.

Например, я могу получить доступ к

data.item[0].specs.overview.details

Но я не могу получить доступ

data.item[0].specs.9a99.details

Ответы [ 5 ]

5 голосов
/ 26 апреля 2010

Использование скобка

то есть:

data.item[0].specs["9a99"].details
5 голосов
/ 26 апреля 2010

Литеральные литералы не должны начинаться с цифры, потому что они будут перепутаны с числовыми литералами. В этом случае вам необходимо использовать синтаксис скобок:

 data.item[0].specs["9a99"].details
2 голосов
/ 26 апреля 2010

Javascript не любит переменные или идентификаторы, которые начинаются с цифры, эта ссылка гласит, что только:

Any variable name has to start with
_ (underscore) 
$ (currency sign) 
a letter from [a-z][A-Z] range 
Unicode letter in the form \uAABB (where AA and BB are hex values)

допустимые первые символы.

2 голосов
/ 26 апреля 2010

Имя переменной в javascript не может начинаться с цифры. Вот почему это не работает.

2 голосов
/ 26 апреля 2010

Попробуйте это,

data.items[0].specs["9a99"].details
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...