Neobaveznost break u switch-case konstrukciji u JavaScript-u
Naredba break u konstrukciji switch-case
nije obavezna. U nedostatku break
nakon izvršenja željenog case,
izvršiće se i svi case ispod njega.
Pogledajmo na primeru:
let num = 1; // neka ovde bude broj 1
switch (num) {
case 1:
console.log(1); // ovo će se aktivirati
case 2:
console.log(2); // i ovo će se aktivirati
case 3:
console.log(3); // i ovo će se aktivirati
}
Promenimo vrednost promenljive:
let num = 2; // neka ovde bude broj 2
switch (num) {
case 1:
console.log(1);
case 2:
console.log(2); // ovo će se aktivirati
case 3:
console.log(3); // i ovo će se aktivirati
}
Promenimo vrednost promenljive:
let num = 3; // neka ovde bude broj 3
switch (num) {
case 1:
console.log(1);
case 2:
console.log(2);
case 3:
console.log(3); // ovo će se aktivirati
}
Ponekad se ova karakteristika koristi pri rešavanju zadataka. Pogledajte primer:
let num = 1;
let res;
switch (num) {
case 1:
case 2:
res = 'a';
break;
case 3:
res = 'b';
break;
}
console.log(res);
Međutim, očiglednije je rešiti
ovakav zadatak pomoću if:
let num = 1;
let res;
if (num == 1 || num == 2) {
res = 'a';
}
if (num == 3) {
res = 'b';
}
console.log(res);