我正在使用Youtube的api检索json信息数组。我想循环遍历"项目"整个数组中的数组,用于访问每个项目的视频ID。
results = {
"kind": "youtube#searchListResponse",
"etag": "\"bvxF-DWHx1toJotsdJBeCm43SLs/Z5vAcycCC4VZd3cPfwzTWZ_FrUQ\"",
"nextPageToken": "CAUQAA",
"pageInfo": {
"totalResults": 1000000,
"resultsPerPage": 5
},
"items": [
{
"id": {
"kind": "youtube#video",
"videoId": "TvyWRevLG5I"
}
},
{
"id": {
"kind": "youtube#video",
"videoId": "P8iKcdh5Ims"
}
},
{
"id": {
"kind": "youtube#video",
"videoId": "tiRZ7YQKUgQ"
},
},
{
"id": {
"kind": "youtube#video",
"videoId": "mENb0jX-SD8"
}
},
{
"id": {
"kind": "youtube#video",
"videoId": "B34hQieOXZs"
}
}
]
}
这是我循环的jquery代码:
$.each(results.items, function(i, item) {
alert(items[i].id.videoId);
});
我收到错误"无法读取属性'长度'未定义"由于某些原因。此外,当我尝试获取长度(results.items.length)以使用正常的forloop时,我得到相同的错误。
答案 0 :(得分:1)
你应该修改一下你的每个函数,因为你引用了错误的对象:
$.each(results.items, function(i, item) {
console.log(item.id.videoId);
});