Socket.io recommends settings per-socket variables like so:
socket.set(\'foo\', bar, function () {});
Variables can also be set and accessed on the
I believe the primary reason is so the data attached to the socket is multi-process safe.
If you're app is single process, always will be single process, and you're sure you're not overriding an internal attribute, socket.foo = bar
will be fine. It would still be best to use get/set as a matter of future-proofing and best-practices.
In a multi-process world, if you set socket.foo = bar
in one process, then in another process socket.foo
will be undefined.