0

我在 jQuery 中解析 json 数组时遇到了一个问题。

我的 json 数组是

({resultCount:1, results:[{wrapperType:"track", kind:"song", artistId:255303209, collectionId:536282724, trackId:536282832, artistName:"Flo Rida", collectionName:"Wild Ones (Deluxe Version)", trackName:"I Cry", collectionCensoredName:"Wild Ones (Deluxe Version)", trackCensoredName:"I Cry", artistViewUrl:"https://itunes.apple.com/us/artist/flo-rida/id255303209?uo=4", collectionViewUrl:"https://itunes.apple.com/us/album/i-cry/id536282724?i=536282832&uo=4", trackViewUrl:"https://itunes.apple.com/us/album/i-cry/id536282724?i=536282832&uo=4", previewUrl:"http://a1278.phobos.apple.com/us/r1000/073/Music/09/3d/27/mzm.wwzzwbfq.aac.p.m4a", artworkUrl30:"http://a1395.phobos.apple.com/us/r1000/112/Music/v4/25/03/bb/2503bb1c-fbf4-4f5d-b249-9a2c3cfe24d6/075679960399.30x30-50.jpg", artworkUrl60:"http://a1459.phobos.apple.com/us/r1000/112/Music/v4/25/03/bb/2503bb1c-fbf4-4f5d-b249-9a2c3cfe24d6/075679960399.60x60-50.jpg", artworkUrl100:"http://a1796.phobos.apple.com/us/r1000/112/Music/v4/25/03/bb/2503bb1c-fbf4-4f5d-b249-9a2c3cfe24d6/075679960399.100x100-75.jpg", collectionPrice:7.99, trackPrice:1.29, releaseDate:"2012-06-22T07:00:00Z", collectionExplicitness:"notExplicit", trackExplicitness:"notExplicit", discCount:1, discNumber:1, trackCount:10, trackNumber:8, trackTimeMillis:223800, country:"USA", currency:"USD", primaryGenreName:"Hip Hop/Rap"}]})

在这个数组中我必须得到artifactUrl30,trackName。这该怎么做 ?当我尝试解析这个时,我得到了这个错误 SyntaxError: JSON.parse: expected double-quoted property name

编辑 我称它为 iTunes 回调就像

function GetDetailsFromitunes(data){

    var mvar = jQuery.parseJSON(data);
    console.log( mvar.resultCount);

    }

我正在根据此文档工作

http://www.apple.com/itunes/affiliates/resources/documentation/itunes-store-web-service-search-api.html#searching

提前致谢。

4

2 回答 2

3

错误信息再清楚不过了。您必须引用您的属性名称:

{ "resultCount":1, "results": [{"wrapperType":"track"}, {"Keep": "going"}] }

你现在拥有它的方式,虽然是有效的 JavaScript,但却是无效的 JSON

于 2013-01-24T05:35:44.333 回答
1
$(document).ready(function() {
    var url =  "http://itunes.apple.com/lookup?id=536282832";
    $.getJSON(url + "&callback=?", null, function(data) {
        console.log(data.results[0].artworkUrl30, data.results[0].trackName);
    });
});
于 2013-01-24T06:02:52.677 回答