Javascript 无法使用jQuery$.getJSON读取JSON数组中的JSON数组
我无法在JSON对象中获取JSON数组的项。我的JSON是这样的:Javascript 无法使用jQuery$.getJSON读取JSON数组中的JSON数组,javascript,jquery,arrays,json,getjson,Javascript,Jquery,Arrays,Json,Getjson,我无法在JSON对象中获取JSON数组的项。我的JSON是这样的: [ { "category":9, "channels":[ { "id":5, "title":"MYTITLE", "active":true, "recent":true, "image":"/arts/736c1ad4-2dbe-40a6-859d-8dba89c26ec
[
{
"category":9,
"channels":[
{
"id":5,
"title":"MYTITLE",
"active":true,
"recent":true,
"image":"/arts/736c1ad4-2dbe-40a6-859d-8dba89c26ec2.jpg",
"recent_tracks":{
"vip":"https://api.xyzsite.com/recent_tracks/vip-3.json",
"free":"https://api.xyzsite.com/recent_tracks/free-3.json"
},
"additional_vip_channels":[
{
"channel_name":"vip-3a",
"recent_tracks_uri":"https://api.xyzsite.com/recent_tracks/vip-3a.json",
"streams":{
"320":"http://streams.xyzsite.com/api/914/320/stream",
"64":"http://streams.xyzsite.com/api/914/64/stream",
"192":"http://streams.xyzsite.com/api/914/192/stream"
}
}
],
"streams":{
"free":"http://streams.xyzsite.com/api/31/56/stream",
"free_56":"http://streams.xyzsite.com/api/31/56/stream",
"free_128":"http://streams.xyzsite.com/api/31/128/stream",
"320":"http://streams.xyzsite.com/api/33/320/stream",
"64":"http://streams.xyzsite.com/api/33/64/stream",
"192":"http://streams.xyzsite.com/api/33/192/stream"
}
},
我使用以下代码获取值:
$.getJSON('https://api.xyzsite.com/channels.json', function(response) {
$.each(response, function (index, value) {
var catId = value.category;
$.each(value.channels, function (index, value) {
XYZApp.channels.push({
categoryId: catId,
id: value.id,
name: value.title,
image: value.image,
recent_tracks: {
vip: value.recent_tracks.vip,
free: value.recent_tracks.free
},
streams: {
free_128: value.streams.free_128,
member_320: value.streams["320"],
member_64: value.streams["64"],
member_192: value.streams["192"]
}
});
console.log(value.additional_vip_channels);
});
});
}).
then ...
我可以获取这些值,但无法读取.each jQuery函数中的附加\u vip\u通道数组。我已经试过了:
- value.additional\u vip\u channels.channel\u name
- 值。其他\u vip\u频道[0]。频道名称
- 值。其他贵宾频道[“0”]。频道名称
如何在其他vip频道中获取频道名称和其他数据?我相信您会想要:
channels[0]['additional_vip_channels'][0]['channel_name']
同样,这也应该有效:(只是选择的方式不同而已)
希望对您有所帮助并起作用:)
value。其他vip\u频道[0]。频道名称
将是正确的方法。请尝试value.channels[“0”]。其他vip\u频道[“0”]。频道名称
日志按预期显示值,然后尝试输出其他vip\u频道的单个值。谢谢,但这两个建议都不起作用。我得到:Uncaught TypeError:无法读取Undelinedwell的属性“0”,某些值可能没有附加的\u vip\u通道
属性。在访问之前,请确保其他\u vip\u频道
存在。value.channels[0]。其他\u vip\u频道[0]。频道名称不起作用,我正在获取:未捕获类型错误:无法读取的属性“0”undefined@burakk你试过另一个例子吗?我在手机上,所以不能测试自己,对不起。
channels[0].additional_vip_channels[0].channel_name