0

尽管我真的不知道为什么,但我收到以下错误:未捕获的类型错误:无法读取未定义的属性“id”

这是引发错误的代码块:

//get elseCount
$.ajax({
    type: "GET",
    dataType: "jsonp",
    cache: false,
    url: "https://api.instagram.com/v1/tags/crookedspaces/media/recent/?count=100&access_token=MYTOKEN",
    success: function(data) {
        confirm("Else Count running");
        for (var e = 0; e < imageCount; e++) {
            var igUID = data.data[e].user.id;
            if(igUID !== "16741082") {
                //confirm("Else count: " + elseCount + ".");
                //console.log("Else portion of code ran " + elseCount + " time(s).");
                ++elseCount;
            }
        }
        console.log("Else count:" + elseCount + ".");                
    }
});
4

2 回答 2

0

看起来您没有正确读取您的 json 对象..

console.log(data)是什么样的?

看起来你必须像这样读取数据

data.data[0].user.id   // To access the first item in the array

如果您想使用用户的任何其他 id,则将 1 替换为该索引..

要迭代和使用这些值,您可以在 daata.data 上使用 $.each 循环

于 2012-09-26T18:07:15.993 回答
0

它正在从不同的用户那里获取数据

所以使用这个 data.data[0].user.id

如果你愿意,你可以将索引放在一个循环中,但首先尝试上面它应该可以工作。

也将 Replace for (var e = 0; e < imageCount; e++) 替换为

for (var e = 0; e < data.data.length; e++) 
于 2012-09-26T18:21:49.227 回答