The JavaScript-kytkinlauseke arvioi lausekkeen ja suorittaa koodilohkon vastaavien tapausten perusteella. Se tarjoaa vaihtoehdon pitkille if-else-ketjuille, mikä parantaa luettavuutta ja ylläpidettävyyttä erityisesti käsiteltäessä useita ehdollisia haaroja.
Sisällysluettelo
- Vaihda lausekkeen syntaksi
- Miten Switch Statement toimii
- Switch-lausunnon vuokaavio
- Yleiset koodilohkot
Vaihda lausekkeen syntaksi
switch (expression) { case value1: // code block 1; break; case value2: // code block 2; break; ... default: // default code block; }>-
Expression>on arvo, jota haluat verrata. Case value1>,case value2>jne. edustavat mahdollisia arvojaexpression>.break>lausunto lopettaaswitch>lausunto. Ilman sitä täytäntöönpano jatkuu seuraavaan tapaukseen.Default>määrittää koodin, joka suoritetaan, jos mikään tapauksista ei vastaaexpression>.
Miten Switch Statement toimii
- Arviointi : Ilmaisu sisällä
switch>lausunto arvioidaan kerran. - Vertailu : Lausekkeen arvoa verrataan kuhunkin
case>etiketti (käyttäen tiukkaa tasa-arvoa===>). - Toteutus : Jos vastaavuus löytyy, vastaava koodilohko vastaavuuden jälkeen
case>etiketti suoritetaan. Jos vastaavuutta ei löydy, suoritus hyppää kohtaandefault>tapaus (jos olemassa) tai jatkuu seuraavalla lauseella lauseen jälkeenswitch>lohko. - Taukolausunto : Koodilohkon suorittamisen jälkeen
break>lausunto lopettaaswitch>lauseke, joka estää täytäntöönpanoa siirtymästä myöhempään tapaukseen. Josbreak>jätetään pois, suoritus jatkuu seuraavaan tapaukseen (tunnetaan nimellä fall-through). - Oletustapaus :
default>tapaus on valinnainen. Jos vastaavuutta ei löydy, koodilohko alladefault>teloitetaan.
Switch-lausunnon vuokaavio

Esimerkki kytkinlausekkeesta:
Täällä tulostamme päivän nimen päivänä 3.
muuntaa merkkijonoksi javaJavascript
let day = 3; let dayName; switch (day) { case 1: dayName = 'Monday'; break; case 2: dayName = 'Tuesday'; break; case 3: dayName = 'Wednesday'; break; case 4: dayName = 'Thursday'; break; case 5: dayName = 'Friday'; break; case 6: dayName = 'Saturday'; break; case 7: dayName = 'Sunday'; break; default: dayName = 'Invalid day'; } console.log(dayName); // Output: Wednesday> Lähtö
Wednesday>
Selitys:
Day>on asetettu3>.- The
switch>lausunto arvioiday>. - Siitä asti kun
day>On3>,case 3>lohko suoritetaan, määritetään'Wednesday'>todayName>. - The
break>lausunto päättyyswitch>lausunto, joka estää täytäntöönpanon jatkumisen muissa tapauksissa.
Esimerkki kytkinlausekkeesta:
Täällä tarkistamme arvosanamme kytkinkotelon avulla.
Javascript let grade = 'B'; let result; switch (grade) { case 'A': result = 'A (Excellent)'; break; case 'B': result = 'B (Average)'; break; case 'C': result = 'C (Below than average)'; break; default: result = 'No Grade'; } console.log(result);> Lähtö
B (Average)>
Selitys:
Grade>on annettu arvo'B'>.- The
switch>lausunto arvioi arvongrade>. - Siitä asti kun
grade>On'B'>, seuraava koodilohkocase 'B':>teloitetaan. - The
result>muuttujalle on määritetty merkkijono'B (Average)'>. - The
break>lausunto lopettaaswitch>lausunto. result>kirjautuu konsoliin, joka tulostaa'B (Average)'>.
Riko avainsana
Thebreak>avainsanaa käytetään lopettamaan silmukan tai aswitch>lausunto.
oletusavainsana
Thedefault>avainsanaa käytetään sisällä aswitch>lauseke varavaihtoehtona, kun mikään niistä ei olecase>lausekkeet vastaavat arvioitavaa arvoa. Se toimii samalla tavalla kuinelse>lausuma anif...else>ketju, joka tarjoaa oletustoiminnon, joka suoritetaan, kun mikään muu tapaus ei täsmää.
java-suunnittelukuvioita
Oletustapauksen sijainnilla ei ole väliä:
Sijoituksestaan riippumatta oletustapaus suoritetaan vain, jos mikään muu tapauksen ehto ei täyty. Joten sen sijoittaminen alkuun, keskelle tai loppuun ei muuta ydinlogiikkaa (ellet käytä vähemmän yleistä tekniikkaa, nimeltä fall-through).
tulostamme oletuskirjaimen.
JavaScript let day = 8; let dayName; switch (day) { default: dayName = 'Invalid day'; break; case 1: dayName = 'Monday'; break; case 2: dayName = 'Tuesday'; break; case 3: dayName = 'Wednesday'; break; case 4: dayName = 'Thursday'; break; case 5: dayName = 'Friday'; break; case 6: dayName = 'Saturday'; break; case 7: dayName = 'Sunday'; break; } console.log(dayName);> Lähtö
Invalid day>
Yleiset koodilohkot
Joissakin tapauksissa meidän on käytettävä samaa koodia useissa vaihtotapauksissa. Katsotaanpa esimerkkiä kuinka se tehdään:
tehtaan suunnittelukuvio
Yleiset koodilohkot Esimerkki:
Tässä samat koodilohkot kahdelle eri kytkintapaukselle.
Javascript let grade = 'A' let result; switch (grade) { case 'A': result = 'Grade is excellent' break; case 'B': result = 'Grade is good' break; case 'C': result = 'Grade is Average ' break; case 'D': result = 'Grade is Poor' break; default: text = 'NO grades achieved'; } console.log(result)> Lähtö
Grade is excellent>
Selitys:
Grade>on annettu arvo'A'>.- The
switch>lausunto arvioi arvongrade>. - Siitä asti kun
grade>Ottelut'A'>, seuraava koodilohkocase 'A':>suoritetaan, asetusresult>to'Grade is excellent'>. - The
break>lausunto lopettaaswitch>lausunto. Result>kirjautuu konsoliin, joka tulostaa'Grade is excellent'>.
Huomautus: Jos useat kytkintapaukset vastaavat arvoa, ensimmäinen suoritetaan.