2015-05-12 5 views
0

Я использую простой API REST для проекта, а некоторые из необходимых мне данных используют числовую строку в качестве верхнего узла верхнего уровня. При попытке вызвать его в моем javascript он выдает синтаксические ошибки.Вызов числовых имен полей JSON

вот JSON объект:

{"23497400":{"id":23497400,"name":foobar,"profileIconId":627,"revisionDate":1431385425000}}

и вот где я бросал ошибку:

var myArr = JSON.parse(xmlhttp.responseText); 
var name1 = myArr.23497400.name; 

Там определенно что-то очень простое, что я пропавшими без вести, не так ли?

+0

я думаю, что вы должны сделать вар name1 = myArr [ «23497400»], имя; – Alon

ответ

5

Если ключ не является допустимым идентификатором, вам необходимо использовать bracket notation.

var name1 = myArr['23497400'].name; 

При использовании dot notation,

property must be a valid JavaScript identifier, i.e. a sequence of alphanumerical characters, also including the underscore ("_") and dollar sign ("$"), that cannot start with a number. For example, object.$1 is valid, while object.1 is not.

+0

спасибо! Я знал, что должно быть простое исправление – VCUcompSci

1

Dot нотации работает только с именами свойств, которые являются допустимыми идентификаторами: они должны начинаться с буквы, $, _ или последовательности юникода побега. Для всех остальных имен свойств (например, ваша цифровая собственности в данном случае), вы должны использовать кронштейн обозначение, например, так:

myArr['23497400'].name 
Смежные вопросы