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:
let 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:
let 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:
let 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:
let 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:
let num = 1;
let res;
if (num == 1 || num == 2) {
res = 'a';
}
if (num == 3) {
res = 'b';
}
console.log(res);