ru.javascript.info
ru.javascript.info copied to clipboard
Замыкание - ошибка на картинке в решении задачи Армия функций
Язык программирования JavaScript -> Продвинутая работа с функциями -> Замыкание В решении последней задачи Армия функций есть картинка:
которая иллюстрирует следующий код:
function makeArmy() {
let shooters = [];
for(let i = 0; i < 10; i++) {
let shooter = function() { // функция shooter
alert( i ); // должна выводить порядковый номер
};
shooters.push(shooter);
}
return shooters;
}
let army = makeArmy();
army[0](); // 0
army[5](); // 5
Ошибка заключается в том, что на картинке показано что цикл for дойдет до итерации, где i = 10, но на деле этого не произойдет. Цикл завершится на итерации с i = 9.
P.S. Спасибо за учебник и за то, что очень подробно объясняете вещи, которые творятся под капотом JS.