Vyhlásenie o prepnutí JavaScriptu
The Príkaz na prepnutie JavaScriptu vyhodnotí výraz a vykoná blok kódu na základe zodpovedajúcich prípadov. Poskytuje alternatívu k dlhým reťazcom if-else, zlepšuje čitateľnosť a udržiavateľnosť, najmä pri manipulácii s viacerými podmienenými vetvami.
Obsah
Syntax príkazu Switch
switch (expression) { case value1: // code block 1; break; case value2: // code block 2; break; ... default: // default code block; } -
Expression>je hodnota, ktorú chcete porovnať. -
Case value1>,case value2>, atď., predstavujú možné hodnotyexpression>. -
break>vyhlásenie ukončujeswitch>vyhlásenie. Bez nej bude exekúcia pokračovať v ďalšom prípade. -
Default>určuje kód, ktorý sa má spustiť, ak sa žiadny z prípadov nezhoduje sexpression>.
Ako funguje príkaz Switch
- Hodnotenie : Výraz vo vnútri
switch>výrok sa hodnotí raz. - Porovnanie : Hodnota výrazu sa porovnáva s každým
case>štítok (pri použití prísnej rovnosti===>). - Poprava : Ak sa nájde zhoda, po zhode nasleduje zodpovedajúci blok kódu
case>štítok sa vykoná. Ak sa nenájde žiadna zhoda, poprava preskočí nadefault>prípade (ak existuje) alebo pokračuje nasledujúcim vyhlásením poswitch>blokovať. - Vyhlásenie o prerušení : Po vykonaní bloku kódu sa
break>vyhlásenie ukončujeswitch>vyhlásenie, ktoré bráni tomu, aby exekúcia prepadla do ďalších prípadov. Akbreak>sa vynechá, vykonávanie bude pokračovať do ďalšieho prípadu (známeho ako pád). - Predvolený prípad : The
default>prípad je voliteľný. Ak sa nenájde žiadna zhoda, blok kódu poddefault>je vykonaný.
Vývojový diagram príkazu Switch
Príklad príkazu Switch:
Tu vytlačíme názov dňa v deň 3.
Javascript 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 Výkon
Wednesday
Vysvetlenie:
-
Day>je nastavený na3>. - The
switch>vyhlásenie hodnotíday>. - Od r
day>je3>,case 3>blok sa vykoná, priradenie'Wednesday'>dodayName>. - The
break>vyhlásenie končíswitch>vyhlásenie, ktoré bráni pokračovaniu exekúcie v iných prípadoch.
Príklad príkazu Switch:
Tu skontrolujeme náš stupeň pomocou puzdra spínača.
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); Výkon
B (Average)
Vysvetlenie:
-
Grade>je priradená hodnota'B'>. - The
switch>vyhlásenie hodnotí hodnotugrade>. - Od r
grade>je'B'>, nasledujúci blok kóducase 'B':>je vykonaný. - The
result>premennej je priradený reťazec'B (Average)'>. - The
break>vyhlásenie ukončujeswitch>vyhlásenie. -
result>je prihlásený do konzoly, ktorá vypíše'B (Average)'>.
Kľúčové slovo prestávky
The break> kľúčové slovo sa používa na ukončenie vykonávania cyklu alebo a switch> vyhlásenie.
predvolené kľúčové slovo
The default> kľúčové slovo sa používa v rámci a switch> ako záložnú možnosť, keď žiadna z case> výrazy zodpovedajú hodnotenej hodnote. Pôsobí podobne ako else> vyhlásenie v an if...else> reťazec, ktorý poskytuje predvolenú akciu, ktorá sa má vykonať, keď sa nezhodujú žiadne iné konkrétne prípady.
Na pozícii predvoleného prípadu nezáleží:
Bez ohľadu na jeho umiestnenie sa predvolený prípad vykoná iba vtedy, ak nie je splnená žiadna z ostatných podmienok prípadu. Takže jeho umiestnenie na začiatok, stred alebo koniec nemení základnú logiku (pokiaľ nepoužívate menej bežnú techniku nazývanú prepadnutie).
vytlačíme predvolený prípad.
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); Výkon
Invalid day
Spoločné bloky kódu
V niektorých prípadoch musíme použiť rovnaký kód pre viacero prípadov prepínača. Pozrime sa na príklad, ako to urobiť:
Spoločné bloky kódu Príklad:
Tu budeme rovnaké kódové bloky pre dva rôzne prípady prepínačov.
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) Výkon
Grade is excellent
Vysvetlenie:
-
Grade>je priradená hodnota'A'>. - The
switch>vyhlásenie hodnotí hodnotugrade>. - Od r
grade>zápasy'A'>, nasledujúci blok kóducase 'A':>sa vykoná, nastavenieresult>do'Grade is excellent'>. - The
break>vyhlásenie ukončujeswitch>vyhlásenie. -
Result>je prihlásený do konzoly, ktorá vypíše'Grade is excellent'>.
Poznámka: Ak sa s hodnotou zhoduje viacero prípadov prepnutia, vykoná sa prvý.