我正在尝试遍历并根据受尊重的数据类型进行添加。
我假设ID和Type将在下面的代码中放在一起,但是我正在[object Window]代替ID。
这是我的代码:

//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);
    }
});


标为#1的friendID显示正确的#,即5, 4, 6等。
但是,标记为#2的friendStr在打印时显示["[object Window]Type1", "[object Window]Type2", "[object Window]Type1"]

如果删除了toString()函数,则控制台会给我一个friendID.concat错误。

有什么建议?

最佳答案

因为调用toString(friendID)是调用返回window.toString()[object Window]方法,所以您只能说

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

10-06 00:24