Instruction de commutation JavaScript
L' switch
instruction est utilisée pour effectuer différentes actions en fonction de différentes conditions.
L'instruction JavaScript Switch
Utilisez l' switch
instruction pour sélectionner l'un des nombreux blocs de code à exécuter.
Syntaxe
switch(expression) {
case x:
// code block
break;
case y:
// code block
break;
default:
// code block
}
Voilà comment cela fonctionne:
- L'expression switch est évaluée une fois.
- La valeur de l'expression est comparée aux valeurs de chaque cas.
- S'il y a correspondance, le bloc de code associé est exécuté.
- S'il n'y a pas de correspondance, le bloc de code par défaut est exécuté.
Exemple
La getDay()
méthode renvoie le jour de la semaine sous la forme d'un nombre compris entre 0 et 6.
(dimanche=0, lundi=1, mardi=2 ..)
Cet exemple utilise le numéro du jour de la semaine pour calculer le nom du jour :
switch (new Date().getDay()) {
case 0:
day = "Sunday";
break;
case 1:
day = "Monday";
break;
case 2:
day = "Tuesday";
break;
case 3:
day = "Wednesday";
break;
case 4:
day = "Thursday";
break;
case 5:
day = "Friday";
break;
case 6:
day = "Saturday";
}
Le résultat de la journée sera :
Saturday
La pause
Lorsque JavaScript atteint un mot- break
clé, il sort du bloc de commutation.
Cela arrêtera l'exécution à l'intérieur du bloc de commutation.
Il n'est pas nécessaire de casser le dernier cas dans un bloc de commutation. Le bloc se casse (se termine) là de toute façon.
Remarque : Si vous omettez l'instruction break, le cas suivant sera exécuté même si l'évaluation ne correspond pas au cas.
Le mot clé par défaut
Le default
mot clé spécifie le code à exécuter s'il n'y a pas de correspondance de casse :
Exemple
La getDay()
méthode renvoie le jour de la semaine sous la forme d'un nombre compris entre 0 et 6.
Si aujourd'hui n'est ni samedi (6) ni dimanche (0), écrivez un message par défaut :
switch (new Date().getDay()) {
case 6:
text = "Today is Saturday";
break;
case 0:
text = "Today is Sunday";
break;
default:
text = "Looking forward to the Weekend";
}
Le résultat du texte sera :
Today is Saturday
Le default
cas ne doit pas nécessairement être le dernier cas dans un bloc de commutation :
Exemple
switch (new Date().getDay()) {
default:
text = "Looking forward to the Weekend";
break;
case 6:
text = "Today is Saturday";
break;
case 0:
text = "Today is Sunday";
}
Si default
ce n'est pas le dernier cas dans le bloc de commutation, n'oubliez pas de terminer le cas par défaut par une pause.
Blocs de code communs
Parfois, vous souhaiterez que différents cas de commutation utilisent le même code.
Dans cet exemple, les cas 4 et 5 partagent le même bloc de code, et 0 et 6 partagent un autre bloc de code :
Exemple
switch (new Date().getDay()) {
case 4:
case 5:
text = "Soon it is Weekend";
break;
case 0:
case 6:
text = "It is Weekend";
break;
default:
text = "Looking forward to the Weekend";
}
Détails de commutation
Si plusieurs cas correspondent à une valeur de cas, le premier cas est sélectionné.
Si aucun cas correspondant n'est trouvé, le programme continue avec l' étiquette par défaut .
Si aucune étiquette par défaut n'est trouvée, le programme continue à l'instruction ou aux instructions après le commutateur .
Comparaison stricte
Les cas de commutation utilisent une comparaison stricte (===).
Les valeurs doivent être du même type pour correspondre.
Une comparaison stricte ne peut être vraie que si les opérandes sont du même type.
Dans cet exemple, il n'y aura pas de correspondance pour x :
Exemple
let x = "0";
switch (x) {
case 0:
text = "Off";
break;
case 1:
text = "On";
break;
default:
text = "No value found";
}