Share via


switch, instruction

Active l'exécution d'une ou de plusieurs instructions quand la valeur d'une expression spécifiée correspond à une étiquette donnée.

switch (expression) {
   case label1 :
      [statementlist1]
      [break;]
 [ ...
 [ case labelN :
      [statementlistN]
      [break;] ] ]
 [ default :
      [statementlistDefault]]
} 

Arguments

  • expression
    Obligatoire. Expression à évaluer.

  • label1, ..., labelN
    Obligatoire. Identificateur à comparer avec l'argument expression. Si l'expression est identique à l'étiquette (label === expression), l'exécution commence à la liste d'instructions (statementlist) suivant immédiatement le signe deux-points, et se poursuit jusqu'à la rencontre d'une instruction break (facultative) ou la fin d'une instruction switch.

  • statementlist1, ..., statementlistN, statementlistDefault
    Facultatif. Une ou plusieurs instructions à exécuter.

Notes

Utilisez la clause default pour fournir une instruction à exécuter si aucune des valeurs d'étiquette ne correspond à expression. Elle peut figurer à n'importe quel endroit du bloc de code switch.

Aucun ou plusieurs blocs label peuvent être spécifiés. Si aucune valeur label ne correspond à la valeur expression et qu'aucune clause default n'a été spécifiée, aucune instruction n'est exécutée.

L'exécution d'une instruction switch se déroule comme suit :

  • Évaluation de la valeur expression et recherche d'une correspondance dans label, dans l'ordre.

  • Si une valeur label correspond à expression, exécution de la liste d'instructions qui l'accompagnent.

    Poursuite de l'exécution jusqu'à la rencontre d'une instruction break ou jusqu'à la fin d'une instruction switch. Cela signifie que plusieurs blocs label sont exécutés si une instruction break n'est pas utilisée.

  • Si aucun argument label ne correspond à expression, saut jusqu'à la clause default. En l'absence d'une clause default, saut jusqu'à la dernière étape.

  • Poursuite de l'exécution à partir de l'instruction qui suit la fin du bloc de code switch.

Exemple

L'exemple ASP.NET suivant teste le type d'un objet. Cet exemple n'utilise qu'un seul type, mais cela devrait vous permettre de comprendre également le fonctionnement de la fonction avec d'autres types d'objet.

<%@ language="jscript" %>
<%
var d = new Number();
function MyObjectType(obj : Object) : String {
   switch (obj.constructor){
      case Date:
         return "Object is a Date.";
         break;
      case Number:
         return "Object is a Number.";
         break;
      case String:
         return "Object is a String.";
         break;
      default: 
         return "Object is unknown.";
   }
}
Response.Write(MyObjectType(d));
%>

Configuration requise

Version 3

Voir aussi

Référence

break, instruction

if...else, instruction