JavaScript · Middle · Pytanie 12 z 75
Co wypisze ten kod?
for (var i = 0; i < 3; i++) {
setTimeout(() => console.log(i), 0);
}- ✓Poprawna odpowiedź:
3 3 3 - 2
0 1 2 - 3
undefinedtrzy razy
Wyjaśnienie
var tworzy jedną zmienną dla całej funkcji, a gdy timery się uruchomią, pętla jest już zakończona z i = 3. Z let każda iteracja dostaje nowe wiązanie i wynik to 0 1 2.