可能需要关闭以将变量分配给动态创建的函数

时间:2013-12-13 07:23:39

标签: javascript loops closures

试图找出我如何为我在循环中动态创建的函数分配'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

控制台日志中的

。我开始研究闭包来解决这个问题,但看不出它会如何应用。这可能吗?

谢谢!

0 个答案:

没有答案