Sử dụng Vòng lặp While và Vòng lặp Do ... Trong khi trong JavaScript
Tự động hóa là kỹ thuật làm cho một hệ thống hoạt động một cách tự động; trong lập trình, ta sử dụng vòng lặp để tự động hóa các việc lặp đi lặp lại. Vòng lặp là một trong những tính năng hữu ích nhất của ngôn ngữ lập trình, trong bài này ta sẽ tìm hiểu về vòng lặpwhile
và do...while
trong JavaScript. Các câu lệnh while
và do...while
trong JavaScript tương tự như các câu lệnh điều kiện , là các khối mã sẽ thực thi nếu một điều kiện được chỉ định cho kết quả true
. Không giống như một if
tuyên bố, mà chỉ đánh giá một lần, một vòng lặp sẽ chạy nhiều lần cho đến khi điều kiện đánh giá lại không còn true
.
Một loại vòng lặp phổ biến khác mà bạn sẽ gặp là câu lệnh for
, thực thi một số lần nhất định. Vòng lặp while
và do...while
dựa trên điều kiện, do đó không cần biết trước vòng lặp sẽ chạy bao nhiêu lần.
Trong khi lặp lại
Trong JavaScript, câu lệnh while
là một vòng lặp thực thi miễn là điều kiện được chỉ định đánh giá là true
.
Cú pháp rất giống với một if
tuyên bố, như bên dưới.
while (condition) { // execute code as long as condition is true }
Câu lệnh while
là vòng lặp cơ bản nhất để xây dựng trong JavaScript.
Ví dụ, giả sử ta có một bể cá có giới hạn dân số. Đối với mỗi lần lặp lại của vòng lặp, ta sẽ thêm một con cá. Khi bể cá có 10
con cá, giới hạn dân số sẽ đạt đến và chương trình sẽ ngừng bổ sung thêm cá.
// Set population limit of aquarium to 10 const popLimit = 10; // Start off with 0 fish let fish = 0; // Initiate while loop to run until fish reaches population limit while (fish < popLimit) { // add one fish for each iteration fish++; console.log("There's room for " + (popLimit - fish) + " more fish."); }
Một khi ta chạy chương trình trên, ta sẽ nhận được kết quả như sau, cho thấy sự lặp lại của chương trình thông qua while
vòng lặp cho đến khi các điều kiện không còn được đánh giá là true
.
OutputThere's room for 9 more fish. There's room for 8 more fish. There's room for 7 more fish. There's room for 6 more fish. There's room for 5 more fish. There's room for 4 more fish. There's room for 3 more fish. There's room for 2 more fish. There's room for 1 more fish. There's room for 0 more fish.
Trong ví dụ của ta , ta cài đặt của ta while
vòng lặp để chạy miễn là số lượng cá là ít hơn giới hạn dân số của bể cá. Đối với mỗi lần lặp lại, một con cá được thêm vào bể cá cho đến khi tất cả 10
điểm được lấp đầy. Tại thời điểm đó, vòng lặp ngừng chạy.
Vòng lặp vô hạn
Một vòng lặp vô hạn , như tên cho thấy, là một vòng lặp sẽ tiếp tục chạy mãi mãi. Nếu bạn vô tình tạo một vòng lặp vô hạn, nó có thể làm hỏng trình duyệt hoặc máy tính của bạn. Điều quan trọng là phải biết các vòng lặp vô hạn để bạn có thể tránh chúng.
Một vòng lặp vô hạn phổ biến xảy ra khi điều kiện của câu lệnh while
được đặt thành true
. Dưới đây là một ví dụ về mã sẽ chạy mãi mãi. Không cần thiết phải kiểm tra bất kỳ vòng lặp vô hạn nào.
// Initiate an infinite loop while (true) { // execute code forever }
Một vòng lặp vô hạn sẽ chạy mãi mãi, nhưng chương trình có thể được kết thúc bằng từ khóa break
.
Trong ví dụ dưới đây, ta sẽ thêm một if
tuyên bố với giới while
vòng lặp, và khi điều kiện được đáp ứng, ta sẽ chấm dứt vòng lặp với break
.
// Set a condition to true const iceCapsAreMelting = true; let polarBears = 5; // Initiate infinite loop while (iceCapsAreMelting) { console.log(`There are ${polarBears} polar bears.`); polarBears--; // Terminate infinite loop when following condition is true if (polarBears === 0) { console.log("There are no polar bears left."); break; } }
Khi ta chạy đoạn mã trên, kết quả sẽ như sau.
OutputThere are 5 polar bears. There are 4 polar bears. There are 3 polar bears. There are 2 polar bears. There are 1 polar bears. There are no polar bears left.
Lưu ý đây không nhất thiết phải là một phương pháp thực tế để tạo và kết thúc một vòng lặp, nhưng break
là một từ khóa hữu ích cần lưu ý.
Làm… Trong khi Vòng lặp
Ta đã học được về while
vòng lặp, mà thực thi một khối mã càng lâu như một điều kiện nhất định là đúng. Xây dựng dựa trên đó là câu lệnh do...while
, rất giống với while
với sự khác biệt chính là vòng lặp do...while
while sẽ luôn thực thi một lần, ngay cả khi điều kiện không bao giờ đúng.
Dưới đây ta sẽ trình bày cú pháp của vòng lặp do...while
while.
do { // execute code } while (condition);
Như bạn thấy , do
phần của vòng lặp đến trước, và được theo sau bởi while (condition)
. Khối mã sẽ chạy, sau đó điều kiện sẽ được kiểm tra như while
vòng lặp while bình thường.
Để kiểm tra điều này, ta có thể đặt một biến thành 0
, tăng nó trong câu lệnh do
và đặt điều kiện của ta thành false
.
// Set variable to 0 let x = 0; do { // Increment variable by 1 x++; console.log(x); } while (false);
Output1
Đầu ra của ta là 1
, nghĩa là khối mã đã lặp qua vòng lặp một lần (từ 0
) trước khi nó bị dừng bởi điều kiện while
không thành công.
Trong khi vẫn giữ trong tâm trí rằng vòng lặp sẽ lặp ít nhất một lần, các do...while
loop được dùng cho các mục đích tương tự như một while
vòng lặp.
Kết luận
Trong hướng dẫn này, ta đã học về while
vòng lặp, do...while
loop, và vòng lặp vô hạn trong JavaScript.
Tự động hóa các việc lặp đi lặp lại là một phần cực kỳ quan trọng của lập trình và các vòng lặp này có thể giúp làm cho chương trình của bạn ngắn gọn và hiệu quả hơn.
Để tìm hiểu thêm, hãy đọc về vòng lặp while
và do...while
trên Mạng nhà phát triển Mozilla.
Các tin liên quan
Sử dụng Vòng lặp While và Vòng lặp Do ... Trong khi trong JavaScript2017-09-27
Cách sử dụng câu lệnh Switch trong JavaScript
2017-09-11
Cách viết các câu lệnh có điều kiện trong JavaScript
2017-08-29
Hiểu các đối tượng trong JavaScript
2017-08-24
Cách sử dụng phương thức mảng trong JavaScript: Phương thức lặp lại
2017-08-15
Cách chuyển đổi kiểu dữ liệu trong JavaScript
2017-08-15
Cách sử dụng các phương thức mảng trong JavaScript: Phương thức Accessor
2017-08-14
Cách sử dụng phương thức mảng trong JavaScript: Phương thức đột biến
2017-08-10
Cách viết chương trình JavaScript đầu tiên của bạn
2017-08-02
Hiểu mảng trong JavaScript
2017-07-28