2.8 switch-sats
En switch
-sats är ett specialfall av kombinerade if
-satser. Ska ett uttryck eller variabel jämföras med ett antal olika värden, kan man använda en switch
-sats. Koden kan då bli lite mer överskådlig. Det är dock inte alla jämförelser som kan översättas till en switch
-sats, utan det är endast då man kontrollera om uttrycket är lika med de värden som räknas upp. Jämförelser som mindre än, större än, etc. kan inte användas i en switch
-sats. Exemplet är uppdelat i två delar:
- En jämförelse med användning av
switch
istället för en uppsättningif-else
-satser. - En modifiering av ett tidigare exempel med ett bildspel. En
switch
-sats används för att översätta ett bildnummer till ett filnamn.
9 min.
Sammanfattning
I switch
jämförs en variabel eller resultatet av ett uttryck mot ett antal värden, som räknas upp i varsitt case
. I ett case
skrivs de programsatser som ska utföras, om uttrycket är lika med värdet. Programsatserna behöver inte omges med klamrar.
Ofta avslutas ett case
med break
, för att avsluta hela switch
-satsen. Om man inte har med break
, går programmet vidare och utför koden i nästa case
. Vill man att samma kod ska utföras för två olika värden, anges värdena i varsitt case
efter varandra, men i det första läggs ingen kod som ska utföras, utan koden läggs istället i det andra case
.
Man kan också ha med ett default
-alternativ i slutet. Det ska då innehålla kod, som utförs om inget av värdena i case
-alternativen stämmer med uttrycket.
Egna övningar
Här följer ett förslag på några egna övningar. Öppna filen test.html och test.js och utför följande:
- Skriv en
switch
-sats, där du kontrollerar variabelna
. Oma
är 11 eller 12 lägger du in 1 i variabelnx
, ära
13 lägger du in 2 ix
, ära
14 lägger du in 3 ix
. I alla andra fall skax
bli 0. Skriv sedan utx
i elementet för resultat.