JavaScript continue Statement

ĐỊnh nghĩa và cách sử dụng

Câu lệnh continue sẽ bỏ qua một lần lặp trong vòng lặp khi điều kiện xảy ra, sau đó sẽ tiếp tục vòng lặp( nếu có).

Sự khác biệt giữa câu lệnh break continue là câu lệnh break sẽ thoát khỏi vòng lặp còn câu lệnh continue sẽ chỉ thoát khỏi một lần lặp trong vòng lặp.

Tuy nhiên, khi câu lệnh continue được thực thi, nó sẽ thay đổi đối với mỗi loại vòng lặp:

  • Trong vòng lặp while, điều kiện sẽ được kiểm tra và nếu nó trả về True, vòng lặp sẽ tiếp tục chạy.
  • Trong vòng lặp for, biểu thức tăng dần (ví dụ: i++) được thực thi đầu tiên, và sau đó điều kiện được kiểm tra để tìm hiểu xem cần lặp lại một lần nữa hay không.

Câu lệnh continue cũng có thể được sử dụng với một optional label reference.

Câu lệnh continue chỉ có thể được sử dụng trong vòng lặp.

Cú phápcontinue;

Hoặccontinue labelname;

Technical Details

Phiên bản Javascript: ECMAScript 1

Một số ví dụ

Trong ví dụ dưới đây, ta sẽ sử dụng vòng lặp kết hợp với lệnh continue vòng lặp sẽ lặp lại câu lệnh với mỗi giá trị của i, tuy nhiên vòng lặp sẽ bỏ qua  khi i = 3.

Ví dụ RUN
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
    </head>
    <body>
        <h1>Học lập trình miễn phí tại freetuts.net</h1>
        <p id="result"></p>
  
        <button onclick="myFunction()">Run</button>
        
        <script>
            function myFunction() {
                var text = "";
                var i;
                for (i = 0; i < 5; i++) {
                    if (i === 3) {
                        continue;
                    }
                    text += "The number is " + i + "<br>";
                }
                document.getElementById("result").innerHTML = text;
            }
        </script>
    </body>
</html>

Kết quả
The number is 0
The number is 1
The number is 2
The number is 4

Vòng lặp sẽ thực hiện mã lệnh với từng giá trị của i, tuy nhiên nó sẽ bỏ qua giá trị i = 2 và i = 3( sử dụng toán tử OR):

Code RUN
var text = "";
var i;
for (i = 1; i < 8; i++) {
    if (i === 2 || i === 3) continue;
    document.getElementById("demo").innerHTML += i + "<br>";
}

Kết quả
1
4
5
6
7

Trong ví dụ này, ta sử dụng vòng lặp kết hợp với câu lệnh continue, vòng lặp sẽ in ra các phần tử của mảng, tuy nhiên nó sẽ bỏ qua phần tử "php".

Code RUN
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
    </head>
    <body>
        <h1>Học lập trình miễn phí tại freetuts.net</h1>
        <p id="result"></p>
  
        <button onclick="myFunction()">Run</button>
        
        <script>
            function myFunction() {
                var language = ["css", "php", "javascript", "python"];
                var text = ""
                var i;
                for (i = 0; i < language.length; i++) {
                    if (language[i] === "php") {
                        continue;
                    }
                    text += language[i] + "<br>";
                }
                document.getElementById("result").innerHTML = text;
            }
        </script>
    </body>
</html>

Kết quả
css
javascript
python

Sử dụng câu lệnh break kết hợp với một label reference để thoát khỏi một lần lặp của vòng lặp con được đặt vào trong một vòng lặp khác.

Code
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
    </head>
    <body>
        <h1>Học lập trình miễn phí tại freetuts.net</h1>
        <p id="result"></p>
  
        <button onclick="myFunction()">Run</button>
        
        <script>
            function myFunction() {
                var text = "";
                var i, j;

                Loop1: // The first for loop is labeled "Loop1"
                for (i = 0; i < 3; i++) {
                text += "<br>" + "i = " + i + ", j = ";

                    Loop2: // The second for loop is labeled "Loop2"
                    for (j = 10; j < 15; j++) {
                        if (j === 12) {
                            continue Loop2;
                        }
                        document.getElementById("result").innerHTML = text += j + " ";
                    }
                }
            }
        </script>
    </body>
</html>

Kết quả
i = 0, j = 10 11 13 14 
i = 1, j = 10 11 13 14 
i = 2, j = 10 11 13 14

Tham khảo: w3schools.com

Nguồn: freetuts.net