for (var i = 1; i <= 3; ++i) {
setTimeout(function() {
alert(i);
}, i * 1000);
}
Run Code Online (Sandbox Code Playgroud)
这警告"4"3次.我知道为什么,但我不会在这里破坏它......虽然我忘记了如何解决它.什么是解决这个问题的简洁方法?
for (var i = 1; i <= 3; ++i) {
setTimeout((function (x) {
return function () { alert(x); }
})(i), i * 1000);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
505 次 |
| 最近记录: |