Trang chủ > Javascript cơ bản

Lý thuyết

Mục tiêu

Sinh viên hiểu được khái niệm về lệnh while và cách sử dụng chúng trong bài tập thực tế.

Tổng quan

Lệnh while xử lí 1 biểu thức điều kiện và 1 khối lệnh được lặp lại cho đến khi giá trị của biểu thức cho ra giá trị false:

while (condition){
  //do something
}

Đây là 2 điều cần chú ý:

  • Dấu {} là không cần thiết khi chỉ có một câu lệnh cần được xử lí lặp lại, tuy nhiên việc sử dụng nó được cân nhắc hơn cho tính đồng nhất và tốt hơn cho việc hiểu mã lệnh.
  • Lệnh có thể không được xử lí bất kỳ lần nào (khi biểu thức điều kiện trả về false ngay từ ban đầu)

Chúng ta hãy xem một vài ví dụ. Vòng lặp dưới đây xử lí lệnh in 5 lần:

var i = 0;
while(i++ < 5){
  console.log(i + " ");   //prints: 1 2 3 4 5
}

Và ở đây là 1 ví dụ về gọi 1 phương thức mà trả về mỗi vài giá trị, giá trị được tích lũy (cộng dần) cho tới khi ngưỡng yêu cầu được đạt tới.

var result = 0;
while (result < 1){
  result += 0.1;
}

Cộng dần 0.1 vào biến result cho tới khi biểu thức điều kiện result < 1 trả về false thì vòng lặp dừng lại.

Đây là một cách để làm vòng lặp này trở nên đơn giản hơn:

var result = 0;
while ((result += 0.1) < 1){
  console.log(result);
}

Giá trị được in sẽ không bao giờ bằng hoặc vượt 1.0 vì biểu thức với giá trị cộng dồn mới nhất sẽ được kiểm tra trước khi vào khối lệnh xử lí. Đó là điều cần chú ý khi các tính toán được bao gồm trong biểu thức điều kiện, không ở trong khối lệnh xử lí.

Bài tập

Cho 1 số n. Sử dụng while loop để in ra các số chẵn từ 1 tới n

  • Ví dụ:
    • n = 7; In ra: 2,4,6
    • n = 10; In ra: 2,4,6,8,10
  • Đầu vào: n
  • Đầu ra: các số chẵn từ 1 tới n