Tính không bắt buộc của break trong cấu trúc switch-case trong JavaScript
Lệnh break trong cấu trúc switch-case
không phải là bắt buộc. Nếu không có break
sau khi thực thi case đã định,
tất cả các case bên dưới nó cũng sẽ được thực thi.
Hãy xem xét ví dụ:
let num = 1; // giả sử ở đây là số 1
switch (num) {
case 1:
console.log(1); // cái này sẽ chạy
case 2:
console.log(2); // cái này cũng sẽ chạy
case 3:
console.log(3); // và cái này cũng sẽ chạy
}
Hãy thay đổi giá trị của biến:
let num = 2; // giả sử ở đây là số 2
switch (num) {
case 1:
console.log(1);
case 2:
console.log(2); // cái này sẽ chạy
case 3:
console.log(3); // cái này cũng sẽ chạy
}
Hãy thay đổi giá trị của biến:
let num = 3; // giả sử ở đây là số 3
switch (num) {
case 1:
console.log(1);
case 2:
console.log(2);
case 3:
console.log(3); // cái này sẽ chạy
}
Đôi khi đặc điểm này được sử dụng khi giải quyết các bài toán. Hãy xem ví dụ:
let num = 1;
let res;
switch (num) {
case 1:
case 2:
res = 'a';
break;
case 3:
res = 'b';
break;
}
console.log(res);
Tuy nhiên, rõ ràng hơn là giải
bài toán như vậy bằng if:
let num = 1;
let res;
if (num == 1 || num == 2) {
res = 'a';
}
if (num == 3) {
res = 'b';
}
console.log(res);