анализ JSON-объекта с проблемой Jquery - PullRequest
0 голосов
/ 02 мая 2011

Привет! Я пытаюсь проанализировать следующий фрагмент json с помощью Jquery, поэтому я могу получить все из результатов, которые мне нужны, кроме одной важной информации - тегов производительности.

Каждый результат json - этозавернутый в тег события, а затем внутри него есть информация, такая как время и дата и т. д., отформатированные следующим образом

"location": {
                "lng": -0.1187418,
                "city": "London, UK",
                "lat": 51.4681089
            },
            "start": {
                "time": "19:30:00",
                "datetime":"2010-02-16T19:30:00+0000",
                "date": "2010-02-16"
            },

Мне удалось просмотреть это и разобрать его в html.Однако есть один набор тегов для «производительности», которые отформатированы по-разному.

"performance": [{
                {
                    "artist": {
                         "uri": "http://www.songkick.com/artists/288696-vampire-weekend",
                         "displayName": "Vampire Weekend",
                         "id": 288696,
                         "identifier": [{"mbid": "af37c51c-0790-4a29-b995-456f98a6b8c9"}]
                    }
                    "displayName": "Vampire Weekend",
                    "billingIndex": 1,
                    "id": 5380281,
                    "billing": "headline"
                }
            }],

Теперь в цикле for я выполняю следующий код, который отображает информацию о производительности в консоли.

var events = data.resultsPage.results.event;
for (var i = 0, l = events.length; i < l; i++) {

console.log(events[i].performance); }

Однако, когда я пытаюсь войти в структуру, как я был с другими элементами, я возвращаюсь неопределенным, т.е.

console.log(events[i].performance.displayName);

Должен ли я сделать это по-другомуиз-за использования скобок [] в теге производительности в Json?

Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 02 мая 2011

Попытайтесь проверить ваш возвращенный объект JSON здесь , я думаю, что есть некоторая проблема с выводом JSON ..

0 голосов
/ 02 мая 2011

Предполагая, что то, что вы опубликовали, не совсем похоже на то, как выглядит ваш JSON (потому что то, что опубликовано, имеет синтаксическую ошибку), атрибут «performance» представляет собой массив объектов. Поэтому, чтобы получить «displayName», вам нужно знать, какой элемент массива «performance» вам нужен. Затем вы получите доступ к нему по индексу.

console.log(events[i].performance[j].displayName);

(при условии, что вы перебрали массив «performance» с переменной «j».)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...