Instrukcja przełącznika JavaScript

Instrukcja przełącznika JavaScript

The Instrukcja przełączania JavaScript ocenia wyrażenie i wykonuje blok kodu na podstawie pasujących przypadków. Zapewnia alternatywę dla długich łańcuchów if-else, poprawiając czytelność i łatwość konserwacji, szczególnie podczas obsługi wielu gałęzi warunkowych.

Spis treści

Składnia instrukcji Switch

switch (expression) {  case value1:  // code block 1;  break;  case value2:  // code block 2;  break;  ...  default:  // default code block; } 
  • Expression> to wartość, którą chcesz porównać.
  • Case value1> , case value2> itd. reprezentują możliwe wartości expression> .
  • break> oświadczenie kończy switch> oświadczenie. Bez tego wykonanie będzie kontynuowane w następnej sprawie.
  • Default> określa kod, który ma zostać uruchomiony, jeśli żaden z przypadków nie pasuje do expression> .

Jak działa instrukcja Switch

  • Ocena : Wyrażenie wewnątrz switch> instrukcja jest oceniana raz.
  • Porównanie : Wartość wyrażenia jest porównywana z każdym case> etykieta (przy użyciu ścisłej równości ===> ).
  • Wykonanie : Jeśli zostanie znalezione dopasowanie, odpowiedni blok kodu następuje po dopasowaniu case> etykieta jest wykonywana. Jeśli nie zostanie znalezione żadne dopasowanie, wykonanie przechodzi do default> przypadku (jeśli występuje) lub kontynuuje następne stwierdzenie po switch> blok.
  • Oświadczenie o przerwaniu : Po wykonaniu bloku kodu plik break> oświadczenie kończy switch> oświadczenie, zapobiegające przeniesieniu egzekucji na kolejne sprawy. Jeśli break> zostanie pominięty, wykonanie będzie kontynuowane do następnego przypadku (tzw. przepadnięcie).
  • Domyślny przypadek : default> sprawa jest opcjonalna. Jeśli nie zostanie znalezione żadne dopasowanie, blok kodu poniżej default> jest wykonywany.

Schemat blokowy instrukcji Switch

Przykład instrukcji Switch:

Tutaj wydrukujemy nazwę dnia trzeciego.

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 

Wyjście
Wednesday 

Wyjaśnienie:

  • Day> jest ustawione na 3> .
  • The switch> wypowiedź ocenia day> .
  • Od day> Jest 3> , case 3> blok jest wykonywany, przypisując 'Wednesday'> Do dayName> .
  • The break> oświadczenie kończy switch> oświadczenie, uniemożliwiające kontynuowanie egzekucji w innych sprawach.

Przykład instrukcji Switch:

Tutaj sprawdzimy naszą ocenę za pomocą obudowy przełącznika.

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); 

Wyjście
B (Average) 

Wyjaśnienie:

  • Grade> przypisana jest wartość 'B'> .
  • The switch> instrukcja ocenia wartość grade> .
  • Od grade> Jest 'B'> , następujący blok kodu case 'B':> jest wykonywany.
  • The result> do zmiennej przypisany jest ciąg znaków 'B (Average)'> .
  • The break> oświadczenie kończy switch> oświadczenie.
  • result> jest logowany do konsoli, która generuje dane wyjściowe 'B (Average)'> .

Przerwij słowo kluczowe

The break> słowo kluczowe służy do zakończenia wykonywania pętli lub a switch> oświadczenie.

domyślne słowo kluczowe

The default> słowo kluczowe jest używane w ciągu a switch> instrukcja jako opcja awaryjna, gdy żadna z opcji case> wyrażenia odpowiadają ocenianej wartości. Działa podobnie do else> oświadczenie w if...else> łańcuch, zapewniając domyślną akcję do podjęcia, gdy nie pasują żadne inne konkretne przypadki.

Pozycja przypadku domyślnego nie ma znaczenia:

Niezależnie od jego umiejscowienia, przypadek domyślny zostanie wykonany tylko wtedy, gdy żaden z pozostałych warunków przypadku nie zostanie spełniony. Zatem umieszczenie go na początku, w środku lub na końcu nie zmienia podstawowej logiki (chyba że używasz mniej popularnej techniki zwanej opadaniem).

wydrukujemy domyślny przypadek.

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); 

Wyjście
Invalid day 

Wspólne bloki kodu

W niektórych przypadkach musimy użyć tego samego kodu dla wielu przypadków przełączania. Zobaczmy przykład, jak to zrobić:

Wspólne bloki kodu Przykład:

Tutaj użyjemy tych samych bloków kodu dla dwóch różnych przypadków przełączników.

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) 

Wyjście
Grade is excellent 

Wyjaśnienie:

  • Grade> przypisana jest wartość 'A'> .
  • The switch> instrukcja ocenia wartość grade> .
  • Od grade> mecze 'A'> , następujący blok kodu case 'A':> jest wykonywane, ustawienie result> Do 'Grade is excellent'> .
  • The break> oświadczenie kończy switch> oświadczenie.
  • Result> jest logowany do konsoli, która generuje dane wyjściowe 'Grade is excellent'> .

Notatka: Jeżeli do danej wartości pasuje wiele przypadków przełączania, wykonywany jest pierwszy.