我像这样创建一个数组
var membersList = $('#chatbox_members' , avacweb_chat.doc.body).find('li');
var onlineUsers = [];
var offLineUsers = [];
for(var i =0;i<membersList.length;i++){
var name = $(membersList[i]).text().replace("@","");
onlineUsers.push(name);
}
alert(onlineUsers);
listedUsers
会像这样[Mr.EasyBB,Tonight,Tomorrow,Gone];
问题是我是否使用两个 for 循环,一个在 setInterval 之外,一个在内部进行比较-
var membersList = $('#chatbox_members' , _chat.doc.body).find('li');
var onlineUsers = [];
var offLineUsers= [];
for(var i =0;i<membersList.length;i++){
var name = $(membersList[i]).text().replace("@","");
onlineUsers.push(name);
}
var int = setInterval(function() {
var newMember = ('#chatbox_members' , _chat.doc.body).find('li');
for(var i =0;i<newMember.length;i++){
var name = $(newMember[i]).text().replace("@","");
offLineUsers.push(name);
}
然后会得到:
onlineUsers = [Mr.EasyBB,Tonight,Tomorrow,Gone];
offLineUsers = [Mr.EasyBB,Tonight];
因此,为了获得我想基本上替换的离线用户onlineUsers
,offLineUsers
然后应该返回Tomorrow,Gone
。虽然我知道一个对象没有替换的功能,但我该怎么做呢?
我不认为 splice 函数会起作用,因为您需要有参数,并且 pop 或 shift 是数组的开始和结束。