Switch en JavaScript

Qu'est-ce que le Switch ?

L'instruction switch évalue une expression et permet d'exécuter différents blocs de code en fonction du résultat de cette expression. Cette structure peut comprendre plusieurs clauses case, chacune déterminant le code à exécuter selon la valeur retournée, ainsi qu'une clause default qui s'applique si aucune des clauses case ne correspond.

Le code associé à une clause case correspondante sera exécuté jusqu'à ce qu'une instruction break, return ou la fin du bloc switch soit atteinte. Cela signifie que si vous oubliez d'inclure un break à la fin d'un bloc case, les blocs suivants, y compris le bloc default, seront également exécutés, quels que soient les résultats de l'expression initiale.

Syntaxe du Switch

Voici la structure de base d'un switch :

switch (expression) {
  case value1:
    // Instructions exécutées lorsque l'expression = value1
    break;
  case value2:
    // Instructions exécutées lorsque l'expression = value2
    break;
  case value3:
    // Instructions exécutées lorsque l'expression = value3
    break;
  default:
    // Instructions exécutées lorsque l'expression n'est égale ni à value1, ni à value2, ni à value3
}

Si les instructions break sont omises :

switch (expression) {
  case value1:
    // Instructions exécutées lorsque l'expression = value1
  case value2:
    // Instructions exécutées lorsque l'expression = value2 ou value1
  case value3:
    // Instructions exécutées lorsque l'expression = value3, value2 ou value1
  default:
    // Instructions toujours exécutées
}

Exemple d'utilisation

Prenons un exemple pour déterminer un avis basé sur une note :

switch (rating) {
  case 5:
    console.log('Excellent 👏');
    break;
  case 4:
    console.log('Bon 👍');
    break;
  case 3:
    console.log('Correct 👌');
    break;
  default:
    console.log('Insuffisant 👎');
}

Dans ce cas : - Si la note est 5, c'est "Excellent 👏". - Pour une note de 4, cela affiche "Bon 👍". - Une note de 3 donne "Correct 👌". - Autrement, il affichera "Insuffisant 👎".

Exemple Codebyte

Prenons un exemple pour déterminer si un nombre est pair, impair, ou non un nombre :

let number = prompt('Entrez un nombre');

switch (true) {
  case (isNaN(number)):
    console.log('Ce n est pas un nombre.');
    break;
  case (number % 2 === 0):
    console.log('C est un nombre pair.');
    break;
  case (number % 2 === 1):
    console.log('C est un nombre impair.');
    break;
}

Dans cet exemple, nous utilisons l'instruction switch pour évaluer si la valeur d'entrée est un nombre valide, puis pour déterminer si elle est paire ou impaire.

Utilisation du Switch dans vos projets

L'instruction switch est très utile lors de la création d'applications web ou de startups, notamment lorsque vous devez gérer des scénarios de prise de décision. Par exemple, si vous développez une boutique en ligne, vous pouvez utiliser un switch pour traiter différents types de produits et appliquer des remises en fonction de leur catégorie. Voici un exemple simplifié :

let productCategory = 'électronique';

switch (productCategory) {
  case 'vêtements':
    console.log('Appliquer une remise de 10%');
    break;
  case 'électronique':
    console.log('Appliquer une remise de 15%');
    break;
  case 'accessoires':
    console.log('Appliquer une remise de 5%');
    break;
  default:
    console.log('Pas de remise applicable.');
}

Ici, selon la catégorie de produit, un pourcentage de remise différent est appliqué. Cela facilite l'ajout de nouvelles catégories à l'avenir sans avoir à modifier beaucoup de code, rendant votre application extensible et facile à maintenir.