javascript - Socket.io,socket.set() 和套接字属性之间的区别?

标签 javascript node.js socket.io

Socket.io 建议设置每个套接字变量,如下所示:

socket.set('foo', bar, function () {});

也可以在套接字上设置和访问变量:

socket.foo = bar

使用提供的 set() 函数有什么好处吗?

最佳答案

调用 socket.foo 将您的属性设置在套接字对象本身上。不建议这样做,因为您可能会覆盖套接字使用和依赖的内部属性。当您调用 socket.set() 时,它会存储在不会与内部属性冲突的内部数据结构中。

https://github.com/LearnBoost/socket.io/blob/master/lib/socket.js#L246

Socket.prototype.set = function (key, value, fn) {
  this.store.set(key, value, fn);
  return this;
};

关于javascript - Socket.io,socket.set() 和套接字属性之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9251407/

相关文章:

angularjs - 压缩(ZIP)给出 Angular 损坏的问题

sockets - 如何计算数据包的到达时间?

ios - 套接字 IO 日志记录 : Got Message 3 in Swift/iOS

c# - 在 silverlight 和 HTML5 之间切换

javascript - 背景图像下方的白色区域

node.js - 同一操作在 nodejs 中的有限函数调用?

Node.js - socket.io - 刷新页面并断开连接

node.js - 用户登录时重新连接套接字

javascript - 如何在 BrowserWindow (Electron) 中打开 Markdown 文件?

javascript - 使用 JSONP 时出现 "invalid label"?