Break-i mittekohustuslikkus switch-case konstruktsioonis JavaScriptis
Käsk break konstruktsioonis switch-case
ei ole kohustuslik. Kui break puudub,
pärast vastava case täitmist,
käivitatakse kõik allpool olevad case-d.
Vaatame näidet:
let num = 1; // olgu siin number 1
switch (num) {
case 1:
console.log(1); // see käivitub
case 2:
console.log(2); // see käivitub ka
case 3:
console.log(3); // see käivitub ka
}
Muudame muutuja väärtust:
let num = 2; // olgu siin number 2
switch (num) {
case 1:
console.log(1);
case 2:
console.log(2); // see käivitub
case 3:
console.log(3); // see käivitub ka
}
Muudame muutuja väärtust:
let num = 3; // olgu siin number 3
switch (num) {
case 1:
console.log(1);
case 2:
console.log(2);
case 3:
console.log(3); // see käivitub
}
Mõnikord kasutatakse seda omadust ülesannete lahendamisel. Vaadake näidet:
let num = 1;
let res;
switch (num) {
case 1:
case 2:
res = 'a';
break;
case 3:
res = 'b';
break;
}
console.log(res);
Siiski on sellise ülesande lahendamine
läbi if ilmselgem:
let num = 1;
let res;
if (num == 1 || num == 2) {
res = 'a';
}
if (num == 3) {
res = 'b';
}
console.log(res);