小编lov*_*356的帖子

javascript函数中的var范围

我有以下小代码片段,具有以下预期和实际输出.我的问题很简单.为什么按顺序打印呢?以及如何打印预期的输出?

GR,

预期结果:

0
1
2
0
1
2
Run Code Online (Sandbox Code Playgroud)

实际结果:

0
1
2
3
3
3
Run Code Online (Sandbox Code Playgroud)

这是代码:

var functions = [];

for (var i=0; i<10; i++) {
  console.log (i);
  functions.push (function () {
    console.log (i);
  });
};

for (var j=0; j<functions.length; j++) {
  functions[j] ();
};
Run Code Online (Sandbox Code Playgroud)

javascript closures scope

0
推荐指数
1
解决办法
416
查看次数

标签 统计

closures ×1

javascript ×1

scope ×1