JavaScript switch-sats
- Föregående sida return
- Nästa sida throw
- Åter till föregående nivå JavaScript Statement referenshandbok
Definition och användning
Switch-satsen utför kodblock beroende på olika situationer.
Switch-satsen är en del av JavaScript:s “villkorssats”, som används för att utföra olika åtgärder beroende på olika förhållanden. Använd switch för att välja en av flera kodblock att köra. Detta är ett perfekt alternativ till långa nästlade if/else-satser.
switch-satser beräknar uttrycket. Därefter jämförs uttryckets värde med varje cases värde i strukturen. Om det matchar, körs den tillhörande kodblocken.
switch-satser används vanligtvis tillsammans med break- eller default-nyckelord (eller båda). Dessa är valfria:
break-nyckelordet lämnar switch-blocket. Detta stoppar vidare exekvering av mer kod och/eller case-test inom blocket. Om break utsätts, körs nästa kodblock i switch-uttrycket.
Om ingen case matchar, specificerar default-nyckelord några kodblock som ska köras. Det kan finnas endast ett default-nyckelord i en switch. Även om det är valfritt rekommenderas det att använda det eftersom det kan hantera oväntade situationer.
Exempel
Kör kodblock baserat på användarinput:
var text; var fruits = document.getElementById("myInput").value; switch(fruits) { case "Banana": text = "Banana är bra!"; break; case "Orange": text = "Jag är inte en fan av apelsin."; break; case "Apple": text = "Hur gillar du dessa äpplen?"; break; default: text = "Jag har aldrig hört talas om det frukten..."; }
Mer TIY-exempel finns längre ner på sidan.
Syntax
switch(uttryck) { case n: kodblock break; case n: kodblock break; default: standard kodblock }
Parametervärde
Parameter | Beskrivning |
---|---|
uttryck | Obligatorisk. Ange det uttryck som ska beräknas. Uttrycket kommer att beräknas en gång. Uttryckets värde jämförs med varje case-etiketts värde i strukturen. Om det matchar, körs den relaterade kodblocken. |
Tekniska detaljer
JavaScript-version: | ECMAScript 1 |
---|
Mer exempel
Exempel
Beräkna weekday-namn baserat på dagens weekday-nummer (Sunday=0, Monday=1, Tuesday=2, ...):
var day; switch (new Date().getDay()) { case 0: day = "söndag"; break; case 1: day = "fredag"; break; case 2: day = "måndag"; break; case 3: day = "onsdag"; break; case 4: day = "torsdag"; break; case 5: day = "Fredag"; break; case 6: day = "Lördag"; break; default: day = "Okänd dag"; }
Exempel
Om idag inte är lördag eller söndag, skriv en standardmeddelande:
var text; switch (new Date().getDay()) { case 6: text = "Idag är lördag"; break; case 0: text = "Idag är söndag"; break; default: text = "Ser fram emot helgen"; }
Exempel
Ibland vill du att olika fall ska använda samma kod eller använda samma standardvärde.
Observera att i detta exempel delar case samma kodblock, och att default-case inte behöver vara den sista case:n i switch-blocket (men kom ihåg att använda break för att avsluta det om default inte är den sista case:n i switch-blocket).
var text; switch (new Date().getDay()) { case 1: case 2: case 3: default: text = "Ser fram emot helgen"; break; case 4: case 5: text = "Snart är det helg"; break; case 0: case 6: text = "Det är helg"; }
Exempel
Kör koden i en kodblock med switch-sats baserat på användarens input från en dialogruta:
var text; var favDrink = prompt("Vad är din favoritcocktaildryck?"); switch(favDrink) { case "Martini": text = "Utmärkt val! Martini är bra för din själ."; break; case "Daiquiri": text = "Daiquiri är också min favorit!"; break; case "Cosmopolitan": text = "Verkligen? Är du säker på att Cosmopolitan är din favorit?"; break; default: text = "Jag har aldrig hört talas om den ena..."; }
Webbläsarstöd
Sats | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
switch | Stöd | Stöd | Stöd | Stöd | Stöd |
Relaterade sidor
JavaScript-tutorial:JavaScript If...Else-sats
JavaScript-tutorial:JavaScript Switch-sats
JavaScript-referenshandbok:JavaScript if/else-sats
JavaScript-referenshandbok:JavaScript break-sats
- Föregående sida return
- Nästa sida throw
- Åter till föregående nivå JavaScript Statement referenshandbok