Vyhlásenie o prepnutí JavaScriptu

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é hodnoty expression> .
  • break> vyhlásenie ukončuje switch> 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 s expression> .

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čí na default> prípade (ak existuje) alebo pokračuje nasledujúcim vyhlásením po switch> blokovať.
  • Vyhlásenie o prerušení : Po vykonaní bloku kódu sa break> vyhlásenie ukončuje switch> vyhlásenie, ktoré bráni tomu, aby exekúcia prepadla do ďalších prípadov. Ak break> 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 pod default> 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ý na 3> .
  • The switch> vyhlásenie hodnotí day> .
  • Od r day> je 3> , case 3> blok sa vykoná, priradenie 'Wednesday'> do dayName> .
  • 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í hodnotu grade> .
  • Od r grade> je 'B'> , nasledujúci blok kódu case 'B':> je vykonaný.
  • The result> premennej je priradený reťazec 'B (Average)'> .
  • The break> vyhlásenie ukončuje switch> 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í hodnotu grade> .
  • Od r grade> zápasy 'A'> , nasledujúci blok kódu case 'A':> sa vykoná, nastavenie result> do 'Grade is excellent'> .
  • The break> vyhlásenie ukončuje switch> 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ý.