Le problème de l'optionalité des accolades dans les boucles en JavaScript

Bien qu'il soit possible d'omettre les accolades dans les boucles, je le déconseille vivement, car un tel code conduit souvent à des erreurs.

Regardons un exemple. Supposons que nous ayons le code suivant :

javascriptfor (let i = 0; i <= 9; i++)
  console.log(i); // affichera les nombres de 0 à 9

Je vais apporter une petite modification au code ci-dessus (trouvez laquelle) - et il cessera de fonctionner :

javascriptfor (let i = 0; i <= 9; i++);
  console.log(i); // affichera une erreur

Alors, qu'est-ce que j'ai modifié ?

Le problème est survenu parce que j'ai mis un point-virgule après la parenthèse ) de la boucle. Dans ce cas, on obtient ce qu'on appelle une boucle sans corps : elle va simplement tourner à l'intérieur, et la ligne suivante ne lui sera plus rattachée. Par conséquent, pour éviter les problèmes, je recommande toujours de mettre des accolades dans les boucles.

Задание 1

Dites quel sera le résultat de l'exécution du code suivant :

javascriptlet arr = [1, 2, 3, 4, 5];

for (let elem of arr);
  console.log(elem);