JavaScript Switch Statement
Die switch
stelling word gebruik om verskillende aksies uit te voer gebaseer op verskillende toestande.
Die JavaScript Switch Statement
Gebruik die switch
stelling om een van baie kodeblokke te kies wat uitgevoer moet word.
Sintaksis
switch(expression) {
case x:
// code block
break;
case y:
// code block
break;
default:
// code block
}
Dit is hoe dit werk:
- Die skakeluitdrukking word een keer geëvalueer.
- Die waarde van die uitdrukking word vergelyk met die waardes van elke geval.
- As daar 'n passing is, word die geassosieerde blok kode uitgevoer.
- As daar geen ooreenstemming is nie, word die verstekkodeblok uitgevoer.
Voorbeeld
Die getDay()
metode gee die weekdag terug as 'n getal tussen 0 en 6.
(Sondag=0, Maandag=1, Dinsdag=2 ..)
Hierdie voorbeeld gebruik die weekdagnommer om die weekdagnaam te bereken:
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";
}
Die resultaat van die dag sal wees:
Saturday
Die breek Sleutelwoord
Wanneer JavaScript 'n break
sleutelwoord bereik, breek dit uit die skakelblok.
Dit sal die uitvoering binne die skakelblok stop.
Dit is nie nodig om die laaste geval in 'n skakelblok te breek nie. Die blok breek (eindig) in elk geval daar.
Let wel: As jy die onderbrekingstelling weglaat, sal die volgende saak uitgevoer word selfs al stem die evaluering nie by die saak nie.
Die verstek sleutelwoord
Die default
sleutelwoord spesifiseer die kode wat uitgevoer moet word as daar geen hoofletterpassing is nie:
Voorbeeld
Die getDay()
metode gee die weekdag terug as 'n getal tussen 0 en 6.
As vandag nie Saterdag (6) of Sondag (0) is nie, skryf 'n verstekboodskap:
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";
}
Die resultaat van teks sal wees:
Today is Saturday
Die default
geval hoef nie die laaste geval in 'n skakelblok te wees nie:
Voorbeeld
switch (new Date().getDay()) {
default:
text = "Looking forward to the Weekend";
break;
case 6:
text = "Today is Saturday";
break;
case 0:
text = "Today is Sunday";
}
As default
dit nie die laaste geval in die skakelblok is nie, onthou om die verstek geval met 'n breek te beëindig.
Algemene kodeblokke
Soms sal jy wil hê dat verskillende skakelaars dieselfde kode moet gebruik.
In hierdie voorbeeld deel geval 4 en 5 dieselfde kodeblok, en 0 en 6 deel 'n ander kodeblok:
Voorbeeld
switch (new Date().getDay()) {
case 4:
case 5:
text = "Soon it is Weekend";
break;
case 0:
case 6:
text = "It is Weekend";
break;
default:
text = "Looking forward to the Weekend";
}
Skakel besonderhede
As veelvuldige gevalle ooreenstem met 'n saakwaarde, word die eerste geval gekies.
Indien geen ooreenstemmende gevalle gevind word nie, gaan die program voort na die verstek etiket.
As geen verstek etiket gevind word nie, gaan die program voort na die stelling(s) na die skakelaar .
Streng vergelyking
Wissel gevalle gebruik streng vergelyking (===).
Die waardes moet van dieselfde tipe wees om te pas.
'n Streng vergelyking kan slegs waar wees as die operandes van dieselfde tipe is.
In hierdie voorbeeld sal daar geen passing vir x wees nie:
Voorbeeld
let x = "0";
switch (x) {
case 0:
text = "Off";
break;
case 1:
text = "On";
break;
default:
text = "No value found";
}