【问题标题】:Node js get values from array节点js从数组中获取值
【发布时间】:2013-01-06 21:00:17
【问题描述】:

我在服务器端有这个代码发送到客户端,用户与系统断开连接:

data = [usuariosConectados,socket.nickname];
io.sockets.emit('usuarioDesconectado',data);

在客户端我有这个:

websocket.on("usuarioDesconectado",procesarUsuarios);

function procesarUsuarios (mensaje)
{
console.log(mensaje);
    $('#users').html('');
for(u=0; u<mensaje.length; u++)
{
    for(var user in mensaje[u])
    {
        $('#users').append($('<p>').text(mensaje[u][user]));
    }
}
}

console.log(mensaje) 显示:

[{hola:"hola", lol:"lol"}, "Oscar"]

由此我知道用户 Oscar 已退出系统,hola 和 lol 仍在系统中。

问题出在这部分:

$('#users').append($('<p>').text(mensaje[u][user]));

此代码显示已连接的用户,但也显示已断开连接的用户,例如

O
s
c
a
r

如何让已连接的用户与未连接的用户分开?

【问题讨论】:

    标签: arrays node.js


    【解决方案1】:

    我找到了我的解决方案:

    $('#users').html('');
    if (mensaje[1] != null)
    {
    $('#chatInsite').append($('<p>').html('<span>'+ '<strong>' + mensaje[1] + " desconectado</strong></span> "));   
    for(i in mensaje[0])
        {
            $('#users').append($('<p>').text(mensaje[0][i]));
        }
    $('#chat').animate({scrollTop: $('#chatInsite').height()},800);
    }
    else
    {
        for(i in mensaje[0])
        {
            $('#users').append($('<p>').text(mensaje[0][i]));
        }
        console.log("Usuario Nulo");
    }
    

    【讨论】:

      猜你喜欢
      • 2021-04-26
      • 1970-01-01
      • 2019-12-22
      • 1970-01-01
      • 1970-01-01
      • 2020-12-12
      • 1970-01-01
      • 2019-02-18
      • 1970-01-01
      相关资源
      最近更新 更多