« Programmation JavaScript/Structures de contrôle » : différence entre les versions

Contenu supprimé Contenu ajouté
Gmarzin (discussion | contributions)
Gmarzin (discussion | contributions)
Ligne 98 :
 
===switch case===
SwitchLe mot réservé '''switch''' permet en conjonction avec '''case''' de mettre en place un sélecteur de cas d'une grande souplesse.<br/>
Cette structure remplace avantageusement une structure équivalente construite à partir de if else et if else imbriqués.<br/>
Le mécanisme de test ne fait pas appel à une expression logique, mais à une comparaison d'une variable de type scalaire avec des constantesvaleurs du même type.<br/>
Contrairement au langage c, qui nécessite que les valeurs de comparaison soient des constantes littérales, javascript, interprété, autorise l'usage de variables.<br/>
La structure '''switch case''' ne pourrait pas fonctionner correctement sans '''break'''. Enfin, le mot réservé '''default''' couvre les cas différents de ceux traités par les '''case'''.<br/>
La structure '''switch case''' ne pourrait pas fonctionner correctement sans '''break'''.
En effet, et celà est déconcertant au début, quand une condition case est vérifiée, le processeur n'effectue plus de test et exécute tout ce qu'il trouve jusqu'à la fin en pasant par dessus les '''case''' rencontrés.<br/>
La structure '''switch case''' ne pourrait pas fonctionner correctement sans '''break'''. Enfin, le mot réservé '''default''' couvre les cas différentsdifférent de ceux traités par les '''case'''.<br/>
{{Cadre code|switch exemple 1|
<pre>
switch(ma_var)
{
var egal_deux = 2
case 1 :
alert("la variable vaut 1");
break;
case 2egal_deux :
alert("la variable vaut 2");
break;
Ligne 117 ⟶ 121 :
}}
On remarque les break systématiques dans ce cas.<br/>
D'autre part, on illustre la possibilité de fournir des variables à '''case''', ce qui n'est pas possible en '''langage c'''.
Deuxième exemple : Nous allons regroupperregrouper plusieurs cas, et déclencher plusieurs exécutions d'instructions pour certaines valeurs.
{{Cadre code|switch exemple 2|
<pre>
Ligne 123 ⟶ 128 :
{
case 0:
alert("Vraiment nulle, cette variable"); // Elle vaut zérozero
break;
case 1: