ru.javascript.info icon indicating copy to clipboard operation
ru.javascript.info copied to clipboard

Замыкание - ошибка на картинке в решении задачи Армия функций

Open azizagaevrf opened this issue 5 years ago • 0 comments

Язык программирования 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.

azizagaevrf avatar Jun 20 '20 20:06 azizagaevrf