Problema opționalității acoladelor în buclele din JavaScript
Deși în bucle se pot omite acoladele, eu nu recomand să faceți acest lucru, deoarece un astfel de cod duce adesea la erori.
Să ne uităm la un exemplu. Să presupunem că avem următorul cod:
for (let i = 0; i <= 9; i++)
console.log(i); // va afișa numerele de la 0 la 9
Voi face o mică corecție în codul de mai sus (găsiți care) - și acesta va înceta să mai funcționeze:
for (let i = 0; i <= 9; i++);
console.log(i); // va afișa o eroare
Deci, ce am corectat?
Problema a apărut pentru că am pus
un punct și virgulă după paranteza ) din
buclă. În acest caz, se va crea așa-numita
buclă fără corp: aceasta se va executa pur și simplu
în interior, iar următoarea linie nu va mai
apartine acesteia. Prin urmare, pentru a evita problemele,
recomand întotdeauna să folosiți acolade
în bucle.
Spuneți care va fi rezultatul executării următorului cod:
let arr = [1, 2, 3, 4, 5];
for (let elem of arr);
console.log(elem);