Javascript: как я могу получить значение ключа внутри массива объекта JSON

Здравствуйте, я создаю веб-приложение и использую API поиска iTunes. Поэтому, когда я ищу конкретный трек исполнителя, itunes возвращает мне JSON с некоторой информацией, связанной с поисковым запросом, который я ввел.

JSON выглядит так:

{
 "resultCount":1,
 "results": [
{"wrapperType":"track", "kind":"song", "artistId":271256, "collectionId":1025130620, "trackId":1025130621, "artistName":"Drake", "collectionName":"Hotline Bling - Single", "trackName":"Hotline Bling", "collectionCensoredName":"Hotline Bling - Single", "trackCensoredName":"Hotline Bling", "artistViewUrl":"https://itunes.apple.com/us/artist/drake/id271256?uo=4", "collectionViewUrl":"https://itunes.apple.com/us/album/hotline-bling/id1025130620?i=1025130621&uo=4", "trackViewUrl":"https://itunes.apple.com/us/album/hotline-bling/id1025130620?i=1025130621&uo=4", "previewUrl":"http://a1586.phobos.apple.com/us/r1000/172/Music6/v4/f6/2f/76/f62f7681-0f4c-3a9f-9aeb-2098297652f7/mzaf_7372296458390444020.plus.aac.p.m4a", "artworkUrl30":"http://is1.mzstatic.com/image/thumb/Music7/v4/2d/c5/31/2dc53130-44b8-8347-2f83-bce05ee8a649/source/30x30bb.jpg", "artworkUrl60":"http://is1.mzstatic.com/image/thumb/Music7/v4/2d/c5/31/2dc53130-44b8-8347-2f83-bce05ee8a649/source/60x60bb.jpg", "artworkUrl100":"http://is1.mzstatic.com/image/thumb/Music7/v4/2d/c5/31/2dc53130-44b8-8347-2f83-bce05ee8a649/source/100x100bb.jpg", "collectionPrice":1.29, "trackPrice":1.29, "releaseDate":"2015-07-31T07:00:00Z", "collectionExplicitness":"notExplicit", "trackExplicitness":"notExplicit", "discCount":1, "discNumber":1, "trackCount":1, "trackNumber":1, "trackTimeMillis":267024, "country":"USA", "currency":"USD", "primaryGenreName":"Hip-Hop/Rap", "radioStationUrl":"https://itunes.apple.com/station/idra.1025130621", "isStreamable":true}]
}

Как я могу получить конкретное значение «artistId», которое находится внутри массива результатов?

Я использую вызов $.getJSON, и в обратном вызове я не могу получить это значение.

Взгляните на этот пример jsfiddle на строку 54 javascript


person Vasileios Tsakalis    schedule 01.02.2016    source источник
comment
Мне нужен artistId и trackId   -  person Vasileios Tsakalis    schedule 01.02.2016


Ответы (2)


Вы не можете получить идентификатор, как это

 var arr={
 "resultCount":1,
 "results": [
{"wrapperType":"track", "kind":"song", "artistId":271256, "collectionId":1025130620, "trackId":1025130621, "artistName":"Drake", "collectionName":"Hotline Bling - Single", "trackName":"Hotline Bling", "collectionCensoredName":"Hotline Bling - Single", "trackCensoredName":"Hotline Bling", "artistViewUrl":"https://itunes.apple.com/us/artist/drake/id271256?uo=4", "collectionViewUrl":"https://itunes.apple.com/us/album/hotline-bling/id1025130620?i=1025130621&uo=4", "trackViewUrl":"https://itunes.apple.com/us/album/hotline-bling/id1025130620?i=1025130621&uo=4", "previewUrl":"http://a1586.phobos.apple.com/us/r1000/172/Music6/v4/f6/2f/76/f62f7681-0f4c-3a9f-9aeb-2098297652f7/mzaf_7372296458390444020.plus.aac.p.m4a", "artworkUrl30":"http://is1.mzstatic.com/image/thumb/Music7/v4/2d/c5/31/2dc53130-44b8-8347-2f83-bce05ee8a649/source/30x30bb.jpg", "artworkUrl60":"http://is1.mzstatic.com/image/thumb/Music7/v4/2d/c5/31/2dc53130-44b8-8347-2f83-bce05ee8a649/source/60x60bb.jpg", "artworkUrl100":"http://is1.mzstatic.com/image/thumb/Music7/v4/2d/c5/31/2dc53130-44b8-8347-2f83-bce05ee8a649/source/100x100bb.jpg", "collectionPrice":1.29, "trackPrice":1.29, "releaseDate":"2015-07-31T07:00:00Z", "collectionExplicitness":"notExplicit", "trackExplicitness":"notExplicit", "discCount":1, "discNumber":1, "trackCount":1, "trackNumber":1, "trackTimeMillis":267024, "country":"USA", "currency":"USD", "primaryGenreName":"Hip-Hop/Rap", "radioStationUrl":"https://itunes.apple.com/station/idra.1025130621", "isStreamable":true}]
}
arr.results.forEach(function(i,j){console.log(i.artistId)})
person Muhammad Waqas    schedule 01.02.2016

В предоставленной вами скрипке вы пытаетесь получить доступ к artistId, написав data.results.artistId, однако результаты представляют собой массив, и поэтому вы должны получить доступ к свойству по одному из его индексов. Так что что-то вроде data.results[0].artistId должно вам подойти.

person GMchris    schedule 01.02.2016