Опишите пожалуйста подробно как отработает код с var и let

Опишите пожалуйста подробно как отработает код с var и let.

Объясните пожалуйста почему когда мы через forEach вызываем функцию которую запушили в массив происходит следующее:

  1. var - выводит в консоль 5(x4)
  2. let - выводит в консоль 1, 2, 3, 4
let arr = [];

for ( var/let a = 1; a < 5; a++ ) {
    arr.push( () => console.log(a) )
}

arr.forEach( (el) => el() )

Ответы (0 шт):