JavaScript détermine les instructions if/else
if (條件 1) { 當(dāng)條件 1 為 true 時執(zhí)行的代碼; } else if (條件 2) { 當(dāng)條件 2 為 true 時執(zhí)行的代碼; } else { 當(dāng)條件 1 和 條件 2 都不為 true 時執(zhí)行的代碼; }
JavaScript utilise if () { ... } else { ... } pour le jugement conditionnel. Par exemple, pour afficher un contenu différent en fonction de l'age, vous pouvez utiliser l'instruction if pour implémenter ce qui suit?:
var age = 20; if (age >= 18) { // 如果age >= 18為true,則執(zhí)行if語句塊 alert('adult'); } else { // 否則執(zhí)行else語句塊 alert('teenager'); }
L'instruction else est facultative. Si le bloc d'instructions ne contient qu'une seule instruction, vous pouvez omettre {}?:
var age = 20; if (age >= 18) alert('adult'); else alert('teenager');
Le danger d'omettre {} est que si vous souhaitez plus tard ajouter des instructions mais oubliez d'écrire {}, vous modifierez le if .. La sémantique de .else..., par exemple?:
var age = 20; if (age >= 18) alert('adult'); else console.log('age < 18'); // 添加一行日志 alert('teenager'); // <- 這行語句已經(jīng)不在else的控制范圍了
La clause else du code ci-dessus est en fait uniquement responsable de l'exécution de console.log('age < 18');, l'alerte d'origine ("teenager") ; n'est plus dans la portée de contr?le de if...else..., il sera exécuté à chaque fois.
à l'inverse, une déclaration avec {} ne se trompera pas?:
var age = 20; if (age >= 18) { alert('adult'); } else { console.log('age < 18'); alert('teenager'); }
C'est pourquoi nous recommandons de toujours écrire {}.
Jugement conditionnel multiligne
Si vous souhaitez juger les conditions plus en détail, vous pouvez utiliser une combinaison de plusieurs if...else. ..:
var age = 3; if (age >= 18) { alert('adult'); } else if (age >= 6) { alert('teenager'); } else { alert('kid'); }
La combinaison ci-dessus de plusieurs if...else... est en fait équivalente à deux couches de if...else... :
var age = 3; if (age >= 18) { alert('adult'); } else { if (age >= 6) { alert('teenager'); } else { alert('kid'); }
Mais nous écrivons habituellement sinon si ensemble, pour augmenter la lisibilité. Il n'y a pas de problème si le else omet ici {}, car il ne contient qu'une instruction if. Notez que le dernier else séparé ne doit pas être omis {}.
Veuillez noter que la fonction d'exécution des instructions if...else... est de choisir l'une des deux dans plusieurs instructions if...else..., si une certaine condition est vraie, la ultérieur Plus de jugement.
Essayez d'expliquer pourquoi le code suivant affiche adolescent?:
'use strict'; var age = 20; if (age >= 6) { alert('teenager'); } else if (age >= 18) { alert('adult'); } else { alert('kid'); }
Puisque la valeur de l'age est 20, il satisfait en fait aux conditions age >= 6 et age >= 18 en même temps temps, ce qui est très important d'expliquer l'ordre des jugements conditionnels. Veuillez le corriger afin qu'il puisse afficher un adulte.
Que se passe-t-il si le résultat de l'énoncé du jugement conditionnel if n'est pas vrai ou faux?? Par exemple?:
var s = '123'; if (s.length) { // 條件計算結(jié)果為3 // }
JavaScript traite null, indéfini, 0, NaN et cha?ne vide'' comme faux, et toutes les autres valeurs comme vraies, donc le résultat du jugement conditionnel du code ci-dessus est vrai.