使用Socket.IO设置和获取会话数据时,传递的函数是什么?

在以下来自Socket.IO网站的代码片段中,

socket.set('nickname', name, function () { socket.emit('ready'); }); 

当设置客户端数据时,传递的函数用于什么? 一旦数据被设置,是否仅仅用来触发该function? 如果是这样,有什么区别:

 socket.set('nickname', name); socket.emit('ready'); 

还有什么是在以下使用err

 socket.get('nickname', function (err, name) { console.log('Chat message by ', name); }); 

当设置客户端数据时,传递函数的用途是什么

这是一个asynchronouscallback,这意味着这是一个函数,将在set操作完成后调用

如果是这样,有什么区别…

这是一个很大的区别。 socket.set是非阻塞的,这意味着该方法将被调用,但进程将继续使用下面的代码,而不用等待它完成。 这意味着socket.emit将在set完成之前被调用。

以下是“err”的用法:

err可能是连接错误或get方法期间出错的任何内容