Следующие предупреждения 2
каждый раз.
function timer() {
for (var i = 0; i < 3; ++i) {
var j = i;
setTimeout(function () {
alert(j);
}, 1000);
}
}
timer();
Не следует ли var j = i;
установить j
в отдельную область setTimeout?
Если я это сделаю:
function timer() {
for (var i = 0; i < 3; ++i) {
(function (j) {
setTimeout(function () {
alert(j);
}, 1000);
})(i);
}
}
timer();
Он оповещает 0
, 1
, 2
как он должен.
Есть ли что-то, что мне не хватает?