What sequence is logged?
for (var i = 0; i < 3; i++) {
setTimeout(() => console.log(i), 0);
}
for (let j = 0; j < 3; j++) {
setTimeout(() => console.log(j), 0);
}
- 3 3 3 0 1 2
- 0 1 2 0 1 2
- 3 3 3 3 3 3
- 0 1 2 3 3 3
0
voters
BayMax
What sequence is logged?
for (var i = 0; i < 3; i++) {
setTimeout(() => console.log(i), 0);
}
for (let j = 0; j < 3; j++) {
setTimeout(() => console.log(j), 0);
}
BayMax
I would pick “3 3 3 0 1 2” because var shares one loop binding so all callbacks see i as 3, while let creates a fresh binding each iteration for 0 1 2.
Sora
:: Copyright KIRUPA 2024 //--