Possible doublon :
Les bretelles bouclées sont-elles nécessaires dans les instructions d'une seule ligne en JavaScript ?Je suis presque positif de cela, mais je veux m'assurer d'éviter le code défectueux. En JavaScript, les affirmations simples
if
ont-elles besoin de supports bouclés ?if(foo) bar;
Est-ce que ça va ?
Réponses
Trop de publicités?Oui, cela fonctionne, mais seulement jusqu'à une seule ligne juste après une instruction 'if' ou 'else'. Si plusieurs lignes doivent être utilisées, des entretoises bouclées sont nécessaires.
Ce qui suit fonctionnera
if(foo)
Dance with me;
else
Sing with me;
Ce qui suit NE FONCTIONNERA PAS comme vous le souhaitez.
if(foo)
Dance with me;
Sing with me;
else
Sing with me;
You don't know anything;
Mais si ce qui précède est corrigé comme indiqué ci-dessous, alors cela fonctionne pour vous :
if(foo){
Dance with me;
Sing with me;
}else{
Sing with me;
You don't know anything;
}
Bien qu'il soit syntaxiquement acceptable de les omettre, vous ne devriez pas. Le seul cas où l'ambiguïté frappe fort est
if (false)
if (true) foo();
else
bar();
Cela ne fonctionnera ni foo
ni bar
puisque le else
appartient à la deuxième déclaration if
. Pas de problème si des orthèses sont utilisées :
if (false) {
if (true) { foo(); }
} else {
bar();
}