2015-10-13 67 views
0

我試圖循環和添加基於尊重的數據類型。 我假設ID和類型將被放在下面的代碼中,但我得到[對象窗口]來代替ID。 這裏是我的代碼:javascript [對象窗口] concat字符串

//List array FriendID and Type 
var friendArray=[]; 

$('.active').each(function(i, obj) { 
    friendID = $(this).siblings('span:first').data('type'); 
    console.log(friendID); //#1 
    friendType = $(this).data('type');  
    friendStr = toString(friendID).concat(friendType); 
    console.log(friendStr); //#2 
    //Loop through & Add 
    if(friendArray.indexOf(friendStr) == -1) { 
     friendArray.push(friendStr); 
    } 
}); 

的friendID標記#1顯示了正確#,即5, 4, 6等.. 然而,friendStr標記#2所示["[object Window]Type1", "[object Window]Type2", "[object Window]Type1"]打印時...

如果我刪除了toString()函數,控制檯會給我一個friendID.concat錯誤。

有什麼建議嗎?

回答

7

,因爲調用toString(friendID)被調用window.toString()方法,它返回[object Window],你就可以說

String(friendID).concat(friendType); 
//or 
'' + friendID + friendType 
//or just 
friendID + friendType //since friendType is a string 
+0

我該如何去有關更改代碼,以便它與#分別打印正確? – SQLNub

+0

或'''+ friendID',或者根本不需要,因爲'friendID'是數字,'friendType'是字符串 – Tushar

+0

當限制時間到期時,我會選擇你作爲答案...非常感謝! – SQLNub