onlineUsers[userData.userID] = userData;
console.log(onlineUsers);
var userDataHasMes = userData;
userDataHasMes['message'] = new Array();
userContentList[userData.userID] = userDataHasMes;
//在线人数+1
onlineCount++;
console.log(onlineUsers);
userData是一个Object类型的变量,为何我将其赋值给userDataHasMes,对userDataHasMes进行改动,最后userData也会有变动啊??(onlineUsers里只存了useData单操作userDataHasMes时onlineUsers里也会变。。。)无语了
对象的引用的是地址,不是变量。想要不影响,就将对象复制一遍。这应该算是js里面的基础知识。把权威指南看一遍,你就能知道原因了。话说,我踩过这样的坑,两天才爬出来。。。