Tuesday, April 7, 2015

Bài 4 – Câu lệnh rẽ nhánh trong Node Js (tt)


Hôm nay chúng ta tiếp tục tìm hiểu về câu lệnh rẽ nhánh. Câu lệnh hôm nay không khác gì nhiều bài trước. Chỉ khác một chút, tý mình sẽ giải thích thêm. Thực chất như các ngôn ngữ lập trình khác, Javascript cũng thế, câu lệnh switch trong javascript không khác gì. Cho dù Java, Php, C, C++,C#… thì các bạn cũng sẽ gặp thấy cấu trúc này.
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 sau đó thực thi case …. cho tới khi gặp lệnh break hoặc lệnh default thì sẽ thoát khỏi switch

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
    Giờ chúng ta viết một chương trình xuất ra số ngày khi cho tháng trước.
    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

      Copyright © 2014 TutsModel | All Rights Reserved