试图找出我如何为我在循环中动态创建的函数分配'id'变量。函数工作正常,但有一个'id'可以用来弄清楚从哪里来的东西会很方便。开始于:
for(i=0;i<servers;i++){
sockets[i] = io2.connect(serv[i], {reconnect: true});
sockets[i].on('message', function(obj) {
var thisid = 'this is '+i;
console.log(thisid);
//more code here
}
正如所料,这只显示了最后一次迭代(在这种情况下,服务器= 2,所以我得到:
这是2
控制台日志中的。我开始研究闭包来解决这个问题,但看不出它会如何应用。这可能吗?
谢谢!