使用节点js进行实时聊天的数组或对象

时间:2016-06-06 09:53:49

标签: javascript arrays node.js express socket.io

我正在学习 nodejs + express + socketio 。我正在为客户进行实时聊天。我已在管理员页面中成功获取用户列表。当前管理员页面显示所有用户发送消息,但我只需要在用户列表中显示所选用户消息。

在这种情况下,我需要一个数组或对象,其中包含有关聊天会话的所有详细信息,但在我的情况下,详细信息来自不同的事件,因此我对如何推送值感到困惑。

当我搜索数组和对象时,我发现数组有顺序,对象没有,但这句话让我很困惑。到目前为止我可以使用对象但是除了语法之外我无法感觉到对象和数组之间的任何区别。

这里我提出两个问题

  1. 哪一个用于处理私人聊天(数组或对象)?
  2. 如何从不同事件统一推送数据,例如在触发我的对象或数组应该在下面发生的三个事件之后

    chat={"name":"Bilal","mail":"test@test.com","socketid":"asgd","to":"John","message":"Hello!","ip":"192.168.1.4","time":"timestamp"};
    

1 个答案:

答案 0 :(得分:1)

好的,首先让我告诉你有很多关于nodejs和编程的内容,一般从这个项目开始,或者它会让你感到困惑。

回到你的问题,数组和对象在订购方面的区别在于 - 简单地说,将“有序”视为能够对项目进行编号并使用索引检索它们。这可以使用数组,但不能使用对象。例如,你有一个数组a和对象oa[5]会给你第6个元素,但o [5]没有任何意义。对象只是按照特定的顺序将各个部分组合在一起。

IMHO最好在使用对象的方法之间进行通信,尤其是在nodejs中。在处理对象时,您还可以灵活地使用其他复杂结构。