Câu lệnh rẽ nhánh Switch trong JavaScript
– Câu lệnh switch được sử dụng để thực hiện các hành động khác nhau dựa trên các điều kiện khác nhau.
– Sử dụng câu lệnh switch để chọn một khối lệnh trong nhiều khối lệnh để thực hiện ứng với điều kiện đúng với nó.
1. Cú pháp:
switch(expression) { case x: code block break; case y: code block break; default: code block }
Case cuối cùng trong khối chuyển đổi switch, thì có thể có hoặc không có break.
Ngược lại thì bắt buộc phải có break.
– Trong đó:
- expression: biểu thức sẽ được so sánh 1 lần duy nhất với các case bên dưới.
- case giá trị của expression sẽ được so sánh lần lượt với giá trị của case.
- Nếu giá trị của expression match (giống) với giá trị của case thì khối lệnh (code block) tương ứng của case sẽ được thực hiện. Thực hiện xong, sẽ thoát luôn ra khỏi switch với từ khóa break.
- Ngược lại, giá trị của expression KHÔNG match case nào thì khối lệnh (code block) của default sẽ được thực hiện.
2. Ví dụ:
– Phương thức getDay() trả về ngày (thứ) trong tuần là một số từ 0 đến 6 (Sunday=0, Monday=1, Tuesday=2,…)
– Ví dụ này sử dụng số ngày trong tuần để lấy ra thứ trong tuần:
switch (new Date().getDay()) { case 0: day = "Chủ nhật"; break; case 1: day = "Thứ 2"; break; case 2: day = "Thứ 3"; break; case 3: day = "Thứ 4"; break; case 4: day = "Thứ 5"; break; case 5: day = "Thứ 6"; break; case 6: day = "Thứ 7"; }Try it »
3. Từ khóa default:
– Từ khóa default chỉ định các lệnh sẽ thực thi nếu không có case nào phù hợp với điều kiện so sánh của switch:
– Nếu hôm nay không phải là Thứ Bảy (6) hoặc Chủ Nhật (0), thì sẽ viết ra một thông báo mặc định:
Ví dụ:
switch (new Date().getDay()) { case 6: text = "Hôm nay là: Thứ 7"; break; case 0: text = "Hôm nay là: Chủ nhật"; break; default: text = "Không biết hôm nay là thứ mấy!!!"; }Try it »
– Case default không nhất thiết phải là case cuối cùng trong câu lệnh switch:
Ví dụ:
switch (new Date().getDay()) { default: text = "Không biết hôm nay là thứ mấy!!!"; break; case 6: text = "Hôm nay là: Thứ 7"; break; case 0: text = "Hôm nay là: Chủ nhật"; }Try it »
Nếu default không phải là case cuối cùng trong khối chuyển đổi switch, hãy nhớ kết thúc case default bằng break.
4. Có thể nhóm chung khối lệnh với nhau:
– Đôi khi bạn sẽ muốn các case chuyển đổi khác nhau sử dụng chung một khối lệnh.
– Trong ví dụ bên dưới: case 4 và 5 sử dụng chung khối lệnh, case 0 và 6 sử dụng chung một khối lệnh khác:
Ví dụ:
switch (new Date().getDay()) { case 4: case 5: text = "Sắp đến cuối tuần."; break; case 0: case 6: text = "Cuối tuần."; break; default: text = "Trông chờ tới cuối tuần."; }Try it »
5. Chú ý khi thực hiện so sánh điều kiện switch:
– Giá trị so sánh cần phải cùng loại với nhau.
– Chẳng hạn ở ví dụ sau đây, sẽ không có case nào match (phù hợp) với x, vì x kiểu string, còn giá trị của case là number:
Ví dụ:
var x = "0"; switch (x) { case 0: text = "Off"; break; case 1: text = "On"; break; default: text = "Không tìm thấy!!!"; }Try it »
Xem thêm: Câu lệnh điều kiện If trong JavaScript.
[…] Xem thêm: Câu lệnh rẽ nhánh Switch trong JavaScript. […]
[…] luôn kết thúc câu lệnh switch với một default. Ngay cả khi bạn nghĩ rằng không có nhu cầu dùng […]