switch([giá trị cần kiểm tra]){ case [giá trị 1]: // câu lệnh thực thi; break; case [giá trị 1]: // câu lệnh thực thi; break; default: // câu lệnh thực thi khi duyệt hết các trường hợp trên }trong đó break dùng để ngắt dòng lệnh. nếu không có break thì chương trình thực hiện xong câu lệnh ở case
Ví dụ: viết chương trình thực hiện hiển thị tháng cho trước có bao nhiêu ngày. Như các bạn biết thì
Tháng có 31 ngày: 1,3,5,7,8, 10,12
Tháng có 30 ngày: 4,6,9,11;
Tháng 2 có 29 ngày năm nhuận, 28 ngày năm không nhuận.
Năm nhuận là năm chia hết cho 4 nhưng không chia hết cho 100
var month = 10; var year = 2015; switch(month){ case 1: case 3: case 5: case 7: case 8: case 10: case 12: console.log("Có 31 ngày"); break;// thoát switch khi thực hiện đến đây case 4: case 6: case 9: case 11: console.log("Có 30 ngày"); break; case 2: if(year % 4 === 0 && year % 100 !== 0){// nếu là năm nhuận console.log("có 29 ngày"); }else{ console.log("có 28 ngày"); } break; }Kết quả như thế này
Như bạn thấy thì nếu chưa gặp lệnh break thì chương trình vẫn tiếp tục với case tiếp theo. Giờ mình sẽ giải thích sự khác nhau cảu If với switch. Tại sao dùng if, tại sao dụng switch:
- if khác với switch là if có thể so sánh khác nhau. nghĩa là có thể so sánh lớn hơn, nhỏ hơn… trong khi đó switch cho so sánh những trường hợp case bằng nhau thôi. Nếu không bằng thì chuyển sang case khác so sánh. switch cũng có thể xem như là một trường hợp cực kì đặc biệt của if.
- nếu cùng trường hợp thì chương trình thực thi switch nhanh hơn nhiều nếu sử dụng if. Code của switch cũng gọn hơn if.
Cho nên tùy theo trường hợp mà bạn sử dụng switch hoặc if để cho chương trình mình linh hoạt hơn. Chúc bạn thành công.
0 nhận xét :
Post a Comment