Я ссылка на этот пост Access/process (nested) objects, arrays or JSON, ставить не были удачи в выяснении это:Json Синтаксического Вложенный массив
я это JSON, что я получаю от запроса HTTP: и в моем приложении мне нужен спрашивает объект Posts.
{
"email" : "[email protected]",
"username" : "rambo",
"fullname" : "Michael Stalone",
"posts" : [
{ "username" : "Bad Man",
"comments" :
[
{ "com_user" : "michael", "com_post" : "good stuff" },
{ "com_user" : "alex", "com_post" : "hell yes" }
]
},
{ "username" : "CheckerTats",
"comments" : [
{ "com_user" : "basky", "com_post" : "wow awesome" }
]
}
]
}
Я понимаю, как все должно быть. Я также замечаю, что возвращает и объект массива, поэтому я индексирую varriable, я его назначаю: var items = data [0]. console.log (данные [0]) показывает, что это:
{
"email":"[email protected]",
"username":"rambo",
"fullname":"Michael Stalone",
"posts":["[object Object]","[object Object]"]
}
Так что это все хорошо и денди, и понимаю, что мне нужно сделать шаг дальше и исследовать данные [0] [ «сообщения»] [0] который отображается как:
[object Object]
Теперь я почти уверен, что это первый объект сообщения. Я думаю, что данные [0] ['posts'] [0] ['username'] дадут мне это конкретное имя пользователя. Хуже того, моя среда для разработчиков - приложение iOS Apache Cordova, поэтому, когда я запускаю console.log, я ничего не возвращаю. Я назначил это переменным, использует stringify, dot notation и по-прежнему постоянно не могу получить доступ к этому объект. Мне нужно сделать это, чтобы присвоить ему угловую переменную области.
EDIT:
Новый журнал теперь возвращается неопределенным:
var items = dat[0]['posts'][0];
console.log(items['username']); // undefined
Вы использовали console.dir() вместо console.log()? показывает ли что-нибудь другое? Кроме того, что такое бэкэнд? есть ли у вас перехват http? Единственное, о чем я могу думать в данный момент, если вы не можете развернуть эти объекты с помощью console.dir(), так это то, что на этих объектах где-то в процессе есть JSON.toString (not stringify()) , Кажется непохожим, но ?? – Beartums
В вашем журнале есть дополнительные символы ',' 'после' fullname'. Это не может быть объект. Где и как вы создали этот JSON? – Epsilon
@Beartums Я использовал console.dir(), и он ответил так же. , прямо сейчас мой бэкенд - NodeJS, и я использую последнюю схему moongoose http://mongoosejs.com/docs/guide.html для синтаксического анализа. Но первый json, указанный в списке, является именно json в базе данных MongoDB. Поэтому я не вижу, как это происходит может измениться – rambossa