我正在与用户列表进行聊天。
我命令在每个用户连接上发送用户列表我从服务器执行以下操作:
io.on('connection', function (socket) {
var users = [];
socket.on('user connexion', function (username) {
if (typeof users[socket.handshake.address] == "undefined" ) {
users[socket.handshake.address] = [];
}
users[socket.handshake.address].push({username : username, color: "#"+((1<<24)*Math.random()|0).toString(16)});
console.log(users);
io.emit('user connexion', {userlist : users});
});
}
并在前端脚本中执行:
socket.on('user connexion', function(userList){
console.log(userList);
});
但控制台显示:
Object {userlist: Array[0]}
有什么想法吗?
答案 0 :(得分:0)
您的socket.handshake.address
是否为数值?
我认为你希望users
成为一个Object,并通过添加socket.handshake.address
属性({username : username, color: "#"+((1<<24)*Math.random()|0).toString(16)}
)来制作哈希图。