Facebook javascript函数嵌套循环

时间:2012-05-23 18:41:20

标签: javascript javascript-events facebook-javascript-sdk

我需要做一个循环来首先检索我的朋友ID然后用那些id我得到每个用户喜欢的页面的id。我有这个功能,但它只让我第一个用户不喜欢所有用户喜欢......

我做错了什么?

 FB.api('/me/friends', function(response) {
        friendCount = response.data.length;
        for( i=0; i<response.data.length; i++) {
          friendId = response.data[i].id;
          FB.api('/'+friendId+'/likes', function(response) {
                         var testdiv = document.getElementById("test");
        for(i=0;i<response.data.length;i++)
            {
                 testdiv.innerHTML +=  response.data[i].id + '<br/>' ;
            }

2 个答案:

答案 0 :(得分:0)

您正在覆盖“响应”的值 - 在重新使用“响应”之前将用户ID保存到另一个变量中

编辑:将前几行更改为:

 FB.api('/me/friends', function(response) {
        friendCount = response.data.length;
        friendData = response.data;
        for( i=0; i<friendCount; i++) {
          friendId = friendData[i].id;

...

答案 1 :(得分:0)

 FB.api('/me/friends', function(response) {
        friendCount = response.data.length;
        for( i=0; i<response.data.length; i++) {
          friendId = response.data[i].id;
          FB.api('/'+friendId+'/likes', function(response2) { // use another variable
          var testdiv = document.getElementById("test");
        for(j=0;j<response2.data.length;j++) // use another var here also
            {
                 testdiv.innerHTML +=  response2.data[i].id + '<br/>' ;
            }