JavaScript - schakelaarverklaring
Voorbeeld
Voer een codeblok uit op basis van gebruikersinvoer:
var text;
var fruits = document.getElementById("myInput").value;
switch(fruits) {
case "Banana":
text = "Banana is good!";
break;
case "Orange":
text = "I am not a fan of orange.";
break;
case "Apple":
text = "How you like them apples?";
break;
default:
text = "I have never heard of that fruit...";
}
Meer "Probeer het zelf" voorbeelden hieronder.
Definitie en gebruik
De switch-instructie voert een codeblok uit, afhankelijk van verschillende gevallen.
De switch-instructie maakt deel uit van de "Voorwaardelijke" Statements van JavaScript, die worden gebruikt om verschillende acties uit te voeren op basis van verschillende voorwaarden. Gebruik schakelaar om een van de vele codeblokken te selecteren die moeten worden uitgevoerd. Dit is de perfecte oplossing voor lange, geneste if/else- statements.
De switch-instructie evalueert een expressie. De waarde van de uitdrukking wordt vervolgens vergeleken met de waarden van elk geval in de structuur. Als er een overeenkomst is, wordt het bijbehorende codeblok uitgevoerd.
De switch-instructie wordt vaak gebruikt in combinatie met een break of een standaardsleutelwoord (of beide). Deze zijn beide optioneel:
Het break -trefwoord breekt uit het schakelblok. Dit stopt de uitvoering van meer uitvoering van code en/of case-tests binnen het blok. Als break wordt weggelaten, wordt het volgende codeblok in de switch-instructie uitgevoerd.
Het standaardsleutelwoord specificeert een code die moet worden uitgevoerd als er geen overeenkomst is met hoofdletters. Er kan slechts één standaardsleutelwoord in een schakelaar zijn. Hoewel dit optioneel is, wordt u aangeraden het te gebruiken, omdat het onverwachte gevallen regelt.
Syntaxis
switch(expression) {
case n:
code block
break;
case n:
code block
break;
default:
default code block
}
Parameterwaarden
Parameter | Description |
---|---|
expression | Required. Specifies an expression to be evaluated. The expression is evaluated once. The value of the expression is compared with the values of each case labels in the structure. If there is a match, the associated block of code is executed |
Meer voorbeelden
Voorbeeld
Gebruik het nummer van de weekdag van vandaag om de naam van de weekdag te berekenen (zondag=0, maandag=1, dinsdag=2, ...):
var day;
switch (new Date().getDay()) {
case 0:
day = "Sunday";
break;
case 1:
day = "Monday";
break;
case 2:
day = "Tuesday";
break;
case 3:
day = "Wednesday";
break;
case 4:
day = "Thursday";
break;
case 5:
day = "Friday";
break;
case 6:
day = "Saturday";
break;
default:
day = "Unknown Day";
}
Voorbeeld
Als het vandaag noch zaterdag noch zondag is, schrijf dan een standaardbericht:
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";
}
Voorbeeld
Soms wilt u dat verschillende gevallen dezelfde code gebruiken, of doorvallen naar een gemeenschappelijke standaard.
Merk op dat in dit voorbeeld de gevallen hetzelfde codeblok delen en dat het standaardgeval niet het laatste geval in een schakelblok hoeft te zijn (als de standaard echter NIET het laatste geval in het schakelblok is, vergeet dan niet het te beëindigen met pauze).
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";
}
Voorbeeld
De switch-instructie gebruiken om een codeblok uit te voeren op basis van gebruikersinvoer, vanuit een promptvenster:
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..";
}
Gerelateerde pagina's
JavaScript-zelfstudie: JavaScript If...Else-instructies
JavaScript-zelfstudie: JavaScript-schakelverklaring
JavaScript-referentie: JavaScript if/else-instructie
JavaScript-referentie: JavaScript-onderbrekingsinstructie
Browserondersteuning
switch
is een ECMAScript1 (ES1)-functie.
ES1 (JavaScript 1997) wordt volledig ondersteund in alle browsers:
Chrome | IE | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes | Yes |