JavaScript - Lệnh Continue

Xin chào các pháp sư JavaScript tương lai! Hôm nay, chúng ta sẽ cùng nhau khám phá một trong những câu lệnh điều khiển luồng hữu ích nhất trong JavaScript: Lệnh Continue. Nó giống như một nút "bỏ qua" cho mã của bạn! Hãy cùng nhau bắt đầu hành trình thú vị này.

JavaScript - Continue Statement

Lệnh Continue là gì?

Trước khi chúng ta đi sâu vào chi tiết, hãy hiểu xem Lệnh Continue làm gì. Hãy tưởng tượng bạn đang đọc một cuốn sách và bạn gặp một trang không liên quan đến bạn. Bạn sẽ làm gì? Bạn bỏ qua nó và tiếp tục sang trang tiếp theo, phải không? Đó chính xác là điều Lệnh Continue làm trong lập trình!

Lệnh Continue nói với chương trình rằng bỏ qua phần còn lại của vòng lặp hiện tại và chuyển sang vòng lặp tiếp theo. Nó giống như nói, "Không có gì để xem ở đây, hãy tiếp tục!"

Cú pháp

Cú pháp của Lệnh Continue rất đơn giản:

continue;

Đó là tất cả! Chỉ một từ, và nó làm rất nhiều việc. Nhưng nhớ rằng, nó chỉ hoạt động bên trong các vòng lặp. Sử dụng nó bên ngoài vòng lặp sẽ gây ra lỗi, giống như cố gắng bỏ qua một trang trong cuốn sách bạn không đang đọc!

Lệnh Continue với vòng lặp for

Hãy bắt đầu với cách sử dụng phổ biến nhất của Lệnh Continue: bên trong một vòng lặp for. Dưới đây là một ví dụ:

for (let i = 1; i <= 5; i++) {
if (i === 3) {
continue;
}
console.log(i);
}

Bạn nghĩ mã này sẽ输出 gì? Hãy phân tích:

  1. Vòng lặp bắt đầu với i = 1.
  2. Nó in ra 1.
  3. i trở thành 2, nó in ra 2.
  4. i trở thành 3, nhưng đợi đã! Điều kiện if là đúng, vì vậy nó gặp lệnh continue.
  5. Lệnh continue nói với vòng lặp bỏ qua phần còn lại và chuyển sang vòng lặp tiếp theo.
  6. i trở thành 4, nó in ra 4.
  7. Cuối cùng, i trở thành 5, nó in ra 5.

Vậy output sẽ là:

1
2
4
5

Thấy 3 bị thiếu không? Đó là Lệnh Continue đang làm việc!

Lệnh Continue với vòng lặp while

Lệnh Continue cũng hoạt động rất tốt với vòng lặp while. Hãy xem một ví dụ:

let i = 0;
while (i < 5) {
i++;
if (i === 3) {
continue;
}
console.log(i);
}

Mã này tương tự như ví dụ vòng lặp for của chúng ta, nhưng với vòng lặp while. Bạn có thể đoán output không? Đúng rồi:

1
2
4
5

Lại một lần nữa, 3 bị bỏ qua vì Lệnh Continue.

Lệnh Continue với vòng lặp lồng nhau

Bây giờ, hãy nâng cấp một chút với vòng lặp lồng nhau. Đây là nơi mọi thứ trở nên thực sự thú vị!

for (let i = 1; i <= 3; i++) {
for (let j = 1; j <= 3; j++) {
if (i === 2 && j === 2) {
continue;
}
console.log(`i = ${i}, j = ${j}`);
}
}

Mã này có một vòng lặp bên trong một vòng lặp khác. Lệnh Continue nằm trong vòng lặp inner. Bạn nghĩ sẽ xảy ra gì? Hãy xem:

i = 1, j = 1
i = 1, j = 2
i = 1, j = 3
i = 2, j = 1
i = 2, j = 3
i = 3, j = 1
i = 3, j = 2
i = 3, j = 3

Bạn có thấy i = 2, j = 2 bị thiếu không? Đó là Lệnh Continue đang làm việc lần nữa! Nó bỏ qua lần lặp cụ thể của vòng lặp inner.

Các trường hợp sử dụng phổ biến

Bây giờ chúng ta đã hiểu cách Lệnh Continue hoạt động, hãy xem một số trường hợp sử dụng phổ biến:

  1. Bỏ qua các phần tử không mong muốn trong một mảng:
let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
for (let i = 0; i < numbers.length; i++) {
if (numbers[i] % 2 !== 0) {
continue;
}
console.log(numbers[i]);
}

Mã này chỉ in ra các số chẵn, bỏ qua tất cả các số lẻ.

  1. Tránh các phép toán không cần thiết:
for (let i = 1; i <= 100; i++) {
if (i % 10 !== 0) {
continue;
}
console.log(`${i} divisible by 10`);
}

Mã này chỉ thực hiện console.log cho các số chia hết cho 10, tiết kiệm các phép toán không cần thiết.

Practices và Tips

  1. Sử dụng khiêm tốn: Mặc dù Lệnh Continue rất mạnh mẽ, nhưng việc sử dụng quá nhiều có thể làm cho mã của bạn khó đọc hơn. Sử dụng nó khi thực sự đơn giản hóa logic của bạn.

  2. Bình luận mã của bạn: Khi bạn sử dụng Lệnh Continue, thường rất hữu ích để để lại một bình luận giải thích lý do bạn bỏ qua lần lặp đó.

  3. Cẩn thận với vòng lặp do...while: Lệnh Continue trong vòng lặp do...while sẽ nhảy đến kiểm tra điều kiện, không phải bắt đầu của thân vòng lặp.

Dưới đây là bảng tóm tắt các điểm chính về Lệnh Continue:

Mặt khác Mô tả
Mục đích Bỏ qua phần còn lại của vòng lặp hiện tại
Cú pháp continue;
Hoạt động với Vòng lặp for, while, do...while
Hiệu quả với vòng lặp lồng nhau Chỉ ảnh hưởng đến vòng lặp inner nhất chứa nó
Được sử dụng tốt cho Bỏ qua các lần lặp hoặc phép toán không cần thiết

Và thế là bạn đã có nó, các bạn! Bây giờ bạn đã trang bị kiến thức về Lệnh Continue. Nhớ rằng, như bất kỳ công cụ nào trong lập trình, tất cả phụ thuộc vào việc bạn biết khi nào và cách nào để sử dụng nó. Chúc các bạn lập trình vui vẻ và các vòng lặp của bạn luôn chạy mượt mà!

Credits: Image by storyset