2011-06-13 74 views
1

以下是密碼。此代碼從facebook獲取朋友列表。它來爲每個朋友nameid對。我得到這個使用response["data"]並將其存儲在friends。 當我打印friends,我得到了如下補充:如何打印身份證號碼

第一:

if(loggedIn) { 
    FB.api("/me/friends",function(response){ 
     friends = response["data"]; 
     totalToBeLoaded = friends.length; 
     document.getElementById("status").innerHTML=friends; 

    }); 

輸出是:

[目標對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象] ],[對象 對象],[對象對象],[對象 對象],[對象對象], [對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象], [對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象] ],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],[對象對象],[對象 對象],

二: 如果我改變了上面的代碼是這樣的:

if(loggedIn) { 
    FB.api("/me/friends",function(response){ 
     friends = response["data"]; 
     totalToBeLoaded = friends.length; 
    document.getElementById("status").innerHTML=friends[0].id; 
    }); 

它打印。ID在0位置正確的

輸出:

1243533622(ID)

三: 由於有多個ID,如果我把它放在一個while-loop和打印一切:

if(loggedIn) { 
    FB.api("/me/friends",function(response){ 
    friends = response["data"]; 
    totalToBeLoaded = friends.length; 
    while(i<totalToBeLoaded) 
     document.getElementById("status").innerHTML=friends[i].id; 
    }); 

輸出:

沒有被打印。

如何打印所有id的?問題的

回答

4

部分是你的循環

totalToBeLoaded = friends.length; 
while(i<totalToBeLoaded) 
    document.getElementById("status").innerHTML=friends[i].id; 

i值不會改變。你可能想重寫這樣的循環:

for(var i=0, j=friends.length; i < j; i++) { 
    document.getElementById("status").innerHTML += friends[i].id + '<br />'; 
} 

請注意+= friends[i].id。這是追加當前id到狀態元素,而不是每次覆蓋當前值。這可能會更容易看到發生了什麼事情。

+0

thanks.done一個很大的錯誤。感謝您指出..... – learnfromothers 2011-06-13 16:02:43

0

您需要創建某種HTML來顯示它們全部(當前您每次都要更換html),然後遍歷列表(當前您沒有遞增循環計數器)。

var i, htmlList = "<ul>"; 
for (i = 0; i < totalToBeLoaded; i++) { 
    htmlList += "<li>" + friends[i].id + "</li>"; 
} 
htmlList += "</ul>"; 
document.getElementById("status").innerHTML = htmlList;