JavaScript - Vòng lặp While
Xin chào các ngôi sao lập trình tương lai! Hôm nay, chúng ta sẽ khám phá thế giới đầy thích thú của các vòng lặp while trong JavaScript. Là giáo viên máy tính hàng xóm thân thiện của bạn, tôi ở đây để hướng dẫn bạn qua hành trình này với rất nhiều ví dụ và giải thích. Hãy準 bị hành trang ảo của bạn, và cùng nhau bắt đầu cuộc phiêu lưu loopy này!
Vòng lặp while trong JavaScript
Vòng lặp while giống như một người bạn kiên nhẫn luôn hỏi, "Chúng ta đã đến chưa?" cho đến khi bạn cuối cùng đạt được đích đến. Nó là một công cụ cơ bản trong lập trình, cho phép chúng ta lặp lại một khối mã miễn là một điều kiện cụ thể là đúng.
Cú pháp cơ bản
Dưới đây là dạng đơn giản nhất của vòng lặp while:
while (condition) {
// mã cần thực hiện
}
Hãy phân tích này:
- Từ khóa
while
告诉 JavaScript rằng chúng ta muốn bắt đầu một vòng lặp while. -
condition
là một biểu thức boolean được đánh giá trước mỗi lần lặp. - Nếu điều kiện là đúng, mã bên trong dấu
{}
sẽ được thực hiện. - Quá trình này lặp lại cho đến khi điều kiện trở thành sai.
Ví dụ 1: Đếm đến 5
Hãy bắt đầu với một ví dụ đơn giản:
let count = 1;
while (count <= 5) {
console.log("Count is: " + count);
count++;
}
Trong ví dụ này:
- Chúng ta khởi tạo một biến
count
với giá trị 1. - Vòng lặp while tiếp tục miễn là
count
nhỏ hơn hoặc bằng 5. - Bên trong vòng lặp, chúng ta ghi giá trị đếm hiện tại vào console.
- Chúng ta tăng
count
lên 1 bằng cách sử dụng toán tử++
. - Vòng lặp lặp lại các bước 3-4 cho đến khi
count
bằng 6, lúc đó điều kiện trở thành sai và vòng lặp kết thúc.
Kết quả:
Count is: 1
Count is: 2
Count is: 3
Count is: 4
Count is: 5
Ví dụ 2: Tích của các số
Hãy thử một điều gì đó thực tế hơn. Chúng ta sẽ sử dụng vòng lặp while để tính tổng các số từ 1 đến 10:
let sum = 0;
let number = 1;
while (number <= 10) {
sum += number;
number++;
}
console.log("The sum of numbers from 1 to 10 is: " + sum);
Trong ví dụ này:
- Chúng ta khởi tạo
sum
bằng 0 vànumber
bằng 1. - Vòng lặp tiếp tục miễn là
number
nhỏ hơn hoặc bằng 10. - Trong mỗi lần lặp, chúng ta thêm
number
vàosum
. - Chúng ta tăng
number
lên 1. - Sau khi vòng lặp kết thúc, chúng ta in tổng cuối cùng.
Kết quả:
The sum of numbers from 1 to 10 is: 55
Vòng lặp do...while trong JavaScript
Bây giờ, hãy gặp vòng lặp do...while - người cousin lạc quan hơn của vòng lặp while. Nó giống như nói, "Hãy làm này ít nhất một lần, và sau đó chúng ta sẽ xem liệu chúng ta có muốn tiếp tục hay không."
Cú pháp cơ bản
Dưới đây là cấu trúc của vòng lặp do...while:
do {
// mã cần thực hiện
} while (condition);
Sự khác biệt chính ở đây là khối mã được thực hiện ít nhất một lần trước khi kiểm tra điều kiện.
Ví dụ 3: Trò chơi đoán số
Hãy tạo một trò chơi đoán số đơn giản sử dụng vòng lặp do...while:
let secretNumber = 7;
let guess;
do {
guess = prompt("Guess a number between 1 and 10:");
guess = Number(guess);
if (guess === secretNumber) {
console.log("Congratulations! You guessed it!");
} else if (guess < secretNumber) {
console.log("Too low! Try again.");
} else {
console.log("Too high! Try again.");
}
} while (guess !== secretNumber);
Trong ví dụ này:
- Chúng ta đặt một
secretNumber
và khởi tạoguess
. - Vòng lặp yêu cầu người dùng đoán một số và chuyển đổi nó thành kiểu số.
- Chúng ta kiểm tra xem猜测 có chính xác, quá thấp hay quá cao và cung cấp phản hồi.
- Vòng lặp tiếp tục miễn là猜测 không bằng số bí mật.
- Ngay cả khi người dùng đoán chính xác lần đầu tiên, khối mã của vòng lặp vẫn được thực hiện ít nhất một lần.
Vòng lặp while vs for trong JavaScript
Bây giờ chúng ta đã khám phá các vòng lặp while, bạn có thể tự hỏi, "Tôi nên sử dụng vòng lặp while thay vì vòng lặp for khi nào?" Câu hỏi tuyệt vời! Hãy so sánh chúng.
Khi nào nên sử dụng vòng lặp while
Vòng lặp while thường được sử dụng khi:
- Bạn không biết trước số lần lặp.
- Vòng lặp tiếp tục phụ thuộc vào một điều kiện có thể thay đổi trong quá trình thực thi vòng lặp.
Khi nào nên sử dụng vòng lặp for
Vòng lặp for thường được ưa thích khi:
- Bạn biết chính xác số lần lặp.
- Bạn đang đệm qua một chuỗi (như một mảng) với độ dài已知.
Ví dụ 4: Tìm số mũ đầu tiên lớn hơn 1000
Hãy sử dụng vòng lặp while để tìm số mũ đầu tiên lớn hơn 1000:
let power = 0;
let result = 1;
while (result <= 1000) {
power++;
result = Math.pow(2, power);
}
console.log(`The first power of 2 greater than 1000 is 2^${power} = ${result}`);
Trong trường hợp này, vòng lặp while là hoàn hảo vì chúng ta không biết trước số lần lặp cần thiết.
Bảng phương pháp
Dưới đây là bảng tóm tắt các phương pháp chúng ta đã thảo luận:
Loại vòng lặp | Cú pháp | Trường hợp sử dụng |
---|---|---|
while | while (condition) { ... } |
Khi số lần lặp không biết trước |
do...while | do { ... } while (condition); |
Khi bạn muốn thực hiện vòng lặp ít nhất một lần |
for | for (init; condition; update) { ... } |
Khi số lần lặp已知 |
Nhớ rằng, việc chọn đúng vòng lặp giống như việc chọn đúng công cụ cho công việc. Với sự thực hành, bạn sẽ phát triển trực giác để biết loại nào phù hợp nhất trong các tình huống khác nhau.
Và thế là xong, các học trò lập trình của tôi! Chúng ta đã lặp qua trong và ngoài của vòng lặp while trong JavaScript. Nhớ rằng, vòng lặp giống như những vòng đu quay trong sân chơi lập trình - chúng sẽ tiếp tục quay cho đến khi đến lúc dừng lại. Hãy tiếp tục thực hành, và sớm thôi bạn sẽ trở thành master của vòng lặp trong vũ trụ lập trình của bạn!
Credits: Image by storyset