JavaScript Switch-Anweisung

Definition und Verwendung

Der Switch-Befehl führt Codeblöcke basierend auf verschiedenen Situationen aus.

Der Switch-Befehl ist ein Teil der "Bedingungs"-Anweisungen in JavaScript und wird verwendet, um verschiedene Operationen basierend auf verschiedenen Bedingungen auszuführen. Mit Switch wird einer der vielen auszuführenden Codeblöcke ausgewählt. Dies ist die perfekte Lösung für lange verschachtelte if/else-Statements.

Der switch-Statement berechnet den Ausdruck. Anschließend wird der Wert des Ausdrucks mit dem Wert jedes cases im Muster verglichen. Wenn eine Übereinstimmung vorliegt, wird der zugehörige Codeblock ausgeführt.

Der switch-Statement berechnet den Ausdruck. Dann wird der Wert des Ausdrucks mit dem Wert jedes cases im Muster verglichen. Wenn eine Übereinstimmung vorliegt, wird der zugehörige Codeblock ausgeführt.

Der Schlüsselwort break verlässt den switch-Block. Dies stoppt die weitere Ausführung von Code innerhalb des Blocks und/oder die Testung weiterer Fälle. Wenn break weggelassen wird, wird der nächste Codeblock im switch-Statement ausgeführt.

Wenn kein case übereinstimmt, gibt der Schlüsselwort default an, welche Codes ausgeführt werden sollen. Einem switch kann nur ein Schlüsselwort default zugeordnet werden. Obwohl es optional ist, wird empfohlen, es zu verwenden, da es unerwartete Fälle behandeln kann.

Example

Führen Sie den Codeblock aus, basierend auf der Benutzereingabe:

var text;
var fruits = document.getElementById("myInput").value;
switch(fruits) {
  case "Banana":
    text = "Banane ist gut!";
    break;
  case "Orange":
    text = "Ich bin kein Fan von Orange.";
    break;
  case "Apple":
    text = "Wie möchtest du diese Äpfel?";
    break;
  default:
    text = "Ich habe von diesem Obst noch nie gehört...";
}

Try it yourself

Unten auf der Seite gibt es mehr TIY-Beispiele.

Syntax

switch(expression) {
  case n:
    Codeblock
    break;
  case n:
    Codeblock
    break;
  default:
    Standard-Codeblock
}

Parameterwert

Parameter Beschreibung
expression Erforderlich. Geben Sie den auszurechnenden Ausdruck an. Der Ausdruck wird einmal berechnet. Der Wert des Ausdrucks wird mit dem Wert jeder case-Schaltflügel im Muster verglichen. Wenn eine Übereinstimmung vorliegt, wird der zugehörige Codeblock ausgeführt.

Technische Details

JavaScript-Version: ECMAScript 1

Mehr Beispiele

Example

Berechnen Sie den Namen des Wochentags anhand der weekday-Nummer des heutigen Tages (Sonntag=0, Montag=1, Dienstag=2, ...):

var day;
switch (new Date().getDay()) {
  case 0:
    day = "Sonntag";
    break;
  case 1:
    day = "Montag";
    break;
  case 2:
    day = "Dienstag";
    break;
  case 3:
    day = "Mittwoch";
    break;
  case 4:
    day = "Donnerstag";
    break;
  case 5:
    day = "Friday";
    break;
  case 6:
    day = "Saturday";
    break;
  default:
    day = "Unknown Day";
}

Try it yourself

Example

If today is neither Saturday nor Sunday, write a default message:

var text;
switch (new Date().getDay()) {
  case 6:
    text = "Today is Saturday";
    break; 
  case 0:
    text = "Today is Sunday";
    break; 
  default: 
    text = "Looking forward to the Weekend";
}

Try it yourself

Example

Sometimes you may want different cases to use the same code or use the same default value.

Please note that in this example, cases share the same code block, and the default case does not have to be the last case in the switch block (but, if the default is not the last case in the switch block, remember to end it with a break).

var text;
switch (new Date().getDay()) {
  case 1:
  case 2:
  case 3:
  default: 
    text = "Looking forward to the Weekend";
    break; 
  case 4:
  case 5:
    text = "Soon it is Weekend";
    break; 
  case 0:
  case 6:
    text = "It is Weekend";
}

Try it yourself

Example

Execute code blocks using the switch statement based on user input from the prompt box:

var text;
var favDrink = prompt("What's your favorite cocktail drink?");
switch(favDrink) {
  case "Martini":
    text = "Excellent choice! Martini is good for your soul.";
    break;
  case "Daiquiri":
    text = "Daiquiri is my favorite too!";
    break;
  case "Cosmopolitan":
    text = "Really? Are you sure the Cosmopolitan is your favorite?";
    break;
  default:
    text = "I have never heard of that one..";
}

Try it yourself

Browser Support

Statement Chrome IE Firefox Safari Opera
switch Supported Supported Supported Supported Supported

Related Page

JavaScript-Tutorial:JavaScript If...Else Statement

JavaScript-Tutorial:JavaScript-Switch-Anweisung

JavaScript-Referenzhandbuch:JavaScript-if/else-Anweisung

JavaScript-Referenzhandbuch:JavaScript-Break-Anweisung