Die Optionalität von break in der switch-case-Konstruktion in JavaScript

Der Befehl break in der Konstruktion switch-case ist nicht zwingend erforderlich. Wenn break fehlt, werden nach Ausführung des beabsichtigten case auch alle darunterliegenden case ausgeführt.

Schauen wir uns ein Beispiel an:

javascriptlet num = 1; // nehmen wir an, hier steht die Zahl 1

switch (num) {
  case 1:
    console.log(1); // dies wird ausgeführt
  case 2:
    console.log(2); // dies wird auch ausgeführt
  case 3:
    console.log(3); // und dies wird auch ausgeführt
}

Ändern wir den Wert der Variable:

javascriptlet num = 2; // nehmen wir an, hier steht die Zahl 2

switch (num) {
  case 1:
    console.log(1);
  case 2:
    console.log(2); // dies wird ausgeführt
  case 3:
    console.log(3); // dies wird auch ausgeführt
}

Ändern wir den Wert der Variable:

javascriptlet num = 3; // nehmen wir an, hier steht die Zahl 3

switch (num) {
  case 1:
    console.log(1);
  case 2:
    console.log(2);
  case 3:
    console.log(3); // dies wird ausgeführt
}

Manchmal wird diese Besonderheit beim Lösen von Aufgaben genutzt. Sehen Sie sich das Beispiel an:

javascriptlet num = 1;
let res;

switch (num) {
  case 1:
  case 2:
    res = 'a';
  break;
  case 3:
    res = 'b';
  break;
}

console.log(res);

Es ist jedoch offensichtlicher, eine solche Aufgabe mit if zu lösen:

javascriptlet num = 1;
let res;

if (num == 1 || num == 2) {
  res = 'a';
}

if (num == 3) {
  res = 'b';
}

console.log(res);