Tout au long de mes journées de codage en JavaScript, je me suis constamment demandé s’il fallait utiliser un cas de commutation ou une instruction if else pour mon conditionnel. Alors, naturellement, j’ai décidé d’écrire un blog pour peser les différences (pour moi & vous) et voir laquelle est la meilleure dans des circonstances spécifiques.
Une instruction switch est généralement plus efficace qu’un ensemble d’fs imbriqués. Lorsque vous devez choisir celui à utiliser, il est basé sur la lisibilité et l’expression que l’instruction teste.
Fondamentalement, un if else est utilisé pour prendre des décisions tandis qu’une instruction switch est utilisée pour tester la valeur de la variable donnée par rapport à une liste de valeurs de casse.
- L’expression à l’intérieur d’une instruction if décide d’exécuter les instructions à l’intérieur du bloc if ou sous le bloc else. Pour switch, l’expression dans l’instruction switch décide du cas à exécuter.
- L’instruction if-else vérifie l’égalité ainsi que l’expression logique. D’autre part, switch vérifie uniquement l’égalité.
- L’instruction if évalue un entier, un caractère, un pointeur ou un type à virgule flottante ou un type booléen. D’autre part, l’instruction switch évalue uniquement un caractère ou un type de données entier.
- La séquence d’exécution est comme l’instruction sous if block s’exécutera ou les instructions sous else block s’exécuteront. Cependant, l’expression dans l’instruction switch décide du cas à exécuter et si vous n’appliquez pas d’instruction break après chaque cas, elle s’exécutera jusqu’à la fin de l’instruction switch.
- Pour une instruction if-else, si l’expression à l’intérieur de l’if s’avère fausse, l’instruction à l’intérieur du bloc else sera exécutée. Pour l’instruction switch, si l’expression à l’intérieur de l’instruction switch s’avère fausse, les instructions par défaut sont exécutées.
- Il est connu pour être difficile de modifier les instructions if-else car il est fastidieux de tracer où la correction est requise. Beaucoup de gens conviennent qu’il est beaucoup plus simple de modifier les instructions switch car elles sont faciles à tracer.
Voici la disposition générale d’une instruction if-else vers le cas du commutateur:
Voici la syntaxe générale d’une instruction if-else:
Et voici la syntaxe générale du commutateur:
L’échelle if-else est de type vérification de condition stricte, tandis que le commutateur est de type capture de valeur de saut.
Quelques avantages clés de l’échelle de commutation if-else:
- Une instruction switch fonctionne beaucoup plus rapidement qu’une échelle if-else équivalente. C’est parce que le compilateur génère une table de saut pour un commutateur lors de la compilation. En conséquence, lors de l’exécution, au lieu de vérifier quel cas est satisfait, il décide seulement quel cas doit être exécuté.
- Il est plus lisible par rapport aux instructions if-else.
En fin de compte, le choix vous appartient et j’espère que ce blog vous aidera à prendre la décision la plus éclairée quand utiliser une déclaration if-else vers un cas de commutation!