Imbrication sinon Les instructions aident à organiser et à isoler les conditions afin d'éviter de tester deux fois la même condition ou de minimiser le nombre de fois que divers tests doivent être effectués.
En utilisant si avec des opérateurs de comparaison et des opérateurs logiques, nous pouvons configurer du code qui sera exécuté si une combinaison spécifique de conditions est remplie. Nous ne voulons pas toujours tester l'intégralité de la condition afin d'exécuter un ensemble d'instructions si l'ensemble du test est vrai et un autre s'il est faux. Nous pouvons vouloir choisir entre plusieurs déclarations différentes, selon la combinaison particulière de conditions est vrai.
Supposons, par exemple, que nous ayons trois valeurs à comparer et souhaitons définir des résultats différents en fonction de celles qui sont égales. L'exemple suivant montre comment nous pouvons imbriquer si déclarations pour tester cela (en gras ci-dessous)
var réponse;
si (a == b) {
si (a == c) {
answer = "tous sont égaux";
} autre {
answer = "a et b sont égaux";
}
} autre {
si (a == c) {
answer = "a et c sont égaux";
} autre {
si (b == c) {
answer = "b et c sont égaux";
} autre {
answer = "tous sont différents";
}
}
}
La façon dont la logique fonctionne ici est la suivante:
- Si la première condition est vraie (
si (a == b)
), le programme vérifie la imbriqué si état (si (a == c)
). Si la première condition est fausse, le programme passe à la autre état. - Si la imbriqué si est vrai, l'instruction est exécutée, c'est-à-dire "tous sont égaux".
- Si la imbriqué si est faux, alors le autre est exécutée, c'est-à-dire "a et b sont égaux".
Voici quelques éléments pour remarquer comment cela est codé:
- Tout d'abord, nous avons créé la variable répondre pour conserver le résultat avant de commencer la si, rendre la variable global. Sans cela, nous aurions dû inclure la variable au début de toutes les instructions d'affectation, car ce serait une variable locale.
- Deuxièmement, nous avons mis en retrait chaque emboîtement si déclaration. Cela nous permet de suivre plus facilement le nombre de niveaux imbriqués d'instructions. Il est également plus clair que nous avons fermé le bon nombre de blocs de code pour terminer tous les si déclarations que nous avons ouvertes. Vous constaterez peut-être qu'il est plus facile de placer les accolades en premier pour chaque si avant de commencer à écrire le code qui appartient à l'intérieur de ce bloc.
Nous pouvons simplifier légèrement une section de ce code afin d’éviter d’imbriquer si autant de déclarations. Où un tout bloc else est composé d'un seul si, nous pouvons omettre les accolades autour de ce bloc et déplacer le si se conditionner sur la même ligne que le autre, en utilisant la condition "sinon si". Par exemple:
var réponse;
si (a == b) {
si (a == c) {
answer = "tous sont égaux";
} autre {
answer = "a et b sont égaux";
}
} sinon si (a == c) {
answer = "a et c sont égaux";
} sinon si (b == c) {
answer = "b et c sont égaux";
} autre {
answer = "tous sont différents";
}
Imbriqué si donc les instructions sont communes à tous les langages de programmation, pas seulement Javascript. Les programmeurs débutants utilisent souvent plusieurs si donc ou sinon déclarations plutôt que de les imbriquer. Bien que ce type de code fonctionne, il deviendra rapidement détaillé et dupliquera les conditions. L'imbrication des instructions conditionnelles crée plus de clarté autour de la logique du programme et donne un code concis qui peut s'exécuter ou compiler plus rapide.