Einführung in JavaScript-Switch-Fälle

In diesem kurzen Artikel werde ich Ihnen JavaScript-Switch-Fälle und deren Verwendung anhand praktischer Beispiele vorstellen.

In diesem Artikel werden praktische Beispiele näher erläutert, damit Sie die Switch-Fälle besser verstehen.

Voraussetzungen.

  • Grundlegende JavaScript-Kenntnisse
  • Code-Editor
  • Webbrowser
  • Dein Gehirn :)

Eine switchAnweisung kann grundsätzlich mehrere ifPrüfungen in JavaScript ersetzen .

Es bietet eine aussagekräftigere Möglichkeit, einen Wert mit mehreren Varianten zu vergleichen.

Die Switch-Syntax

Der switchhat einen oder mehrere caseBlöcke und einen optionalen Standardfall.

switch(x) { case 'value1': // if (x === 'value1') //code here [break] case 'value2': // if (x === 'value2') //code here [break] default: //code here [break] }
  • Der Wert von xwird auf strikte Gleichheit mit dem Wert vom ersten case(dh value1) bis zum zweiten ( value2) usw. geprüft .
  • Wenn die Gleichheit gefunden wird, switchbeginnt die Ausführung des Codes vom entsprechenden casebis zum nächsten break(oder bis zum Ende von switch).
  • Wenn kein Fall übereinstimmt, wird der defaultCode ausgeführt (falls vorhanden).

Einige wenige echte Beispiele

  • Einfacher Play & Pause-Schalter

Die switchAnweisung kann für mehrere Zweige basierend auf einer Zahl oder Zeichenfolge verwendet werden:

switch (movie) { case 'play': playMovie(); break; case 'pause': pauseMovie(); break; default: doNothing(); }

Wenn Sie keine breakAnweisung hinzufügen , "fällt" die Ausführung auf die nächste Ebene. Es ist wichtig, dass Sie den Fall absichtlich mit einem Kommentar kennzeichnen, wenn Sie dies wirklich so gemeint haben, dass das Debuggen erleichtert wird:

switch (movie) { case 'play': // fallthrough case 'pause': pauseMovie(); break; default: doNothing(); }

Die Standardklausel ist optional. Sie können Ausdrücke sowohl im Schalterteil als auch in den Fällen verwenden, wenn Sie möchten. Vergleiche finden zwischen den beiden mit dem ===Operator statt:

switch (3 + 7) { case 5 + 5: correct(); break; default: neverhappens(); }
  • Einfacher Math Calc-Schalter
let average = 2 + 6; switch (average) { case 4: alert( 'Too small' ); break; case 8: alert( 'Exactly!' ); break; case 10: alert( 'Too large' ); break; default: alert( "Incorrect values!" ); }

Hier switchbeginnt der Vergleich average von der ersten caseVariante, die ist 4. Das Match schlägt fehl.

Dann 8. Das ist ein Match, also beginnt die Ausführung case 8bis zum nächsten break.

Wenn dies nicht breakder Fall ist, wird die Ausführung ohne Überprüfung mit der nächsten fortgesetzt case.

Hier ist ein Beispiel ohne break:

let average = 2 + 6; switch (average) { case 4: alert( 'Too small' ); case 8: alert( 'Exactly!' ); case 10: alert( 'Too big' ); default: alert( "Incorrect values!" ); }

Im obigen Beispiel sehen wir die sequentielle Ausführung von drei alerts:

alert( 'Exactly!' ); alert( 'Too big' ); alert( "Incorrect values!" );
  • getDay () Methodenwechselfall

Die getDay()Methode gibt den Wochentag als Zahl zwischen 0 und 6 zurück.

Sonntag = 0, Montag = 1, Dienstag = 2, Mittwoch = 3, Donnerstag = 4, Freitag = 5, Samstag = 6

In diesem Beispiel wird der Wochentagsname anhand der Wochentagsnummer berechnet:

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"; }

Das Ergebnis des Tages ist der aktuelle Wochentag im Tagesformat

PS: Dies würde sich ändern, je nachdem, wann Sie diesen Artikel lesen

Ich habe diesen Artikel am 13/06/2019 geschrieben, der ein Donnerstag ist, also wäre das Ergebnis:

Thursday

Das Standardschlüsselwort

Das Standardschlüsselwort gibt den Code an, der ausgeführt werden soll, wenn keine Fallübereinstimmung vorliegt, eher wie eine else-Anweisung:

switch (new Date().getDay()) { case 6: text = "Today is Saturday"; break; case 0: text = "Today is Sunday"; break; default: text = "Its not weekend yet!"; }

Das Ergebnis des Textes ist:

Its not weekend yet!

Der Standardfall muss nicht der letzte Fall in einem Switch-Block sein:

switch (new Date().getDay()) { default: text = "Its not weekend yet!"; break; case 6: text = "Today is Saturday"; break; case 0: text = "Today is Sunday"; }
Wenn Standard nicht der letzte Fall im Switch-Block ist, denken Sie daran, den Standardfall mit einer Unterbrechung zu beenden.

Fazit

Es gibt so viele praktische Beispiele für Switch-Fälle, dass Sie zu google.com gehen und schnell nach weiteren Beispielen für Switch-Fälle suchen können.

Wenn dieser Artikel Ihnen geholfen hat, zeigen Sie ihn durch Teilen.

Danke fürs Lesen!