Movatterモバイル変換


[0]ホーム

URL:


MDN Web Docs

continue

BaselineWidely available

Thecontinue statement terminates execution of the statements in the current iteration of the current or labeled loop, and continues execution of the loop with the next iteration.

Try it

let text = "";for (let i = 0; i < 10; i++) {  if (i === 3) {    continue;  }  text += i;}console.log(text);// Expected output: "012456789"

Syntax

js
continue;continue label;
labelOptional

Identifier associated with the label of the statement.

Description

In contrast to thebreak statement,continue does not terminate the execution of the loop entirely, but instead:

Thecontinue statement can include an optional label that allows the program to jump to the next iteration of a labeled loop statement instead of the innermost loop. In this case, thecontinue statement needs to be nested within this labeled statement.

Acontinue statement, with or without a following label, cannot be used at the top level of a script, module, function's body, orstatic initialization block, even when the function or class is further contained within a loop.

Examples

Using continue with while

The following example shows awhile loop that has acontinue statement that executes when the value ofi is 3. Thus,n takes on the values 1, 3, 7, and 12.

js
let i = 0;let n = 0;while (i < 5) {  i++;  if (i === 3) {    continue;  }  n += i;}

Using continue with a label

In the following example, a statement labeledcheckIAndJ contains a statement labeledcheckJ. Ifcontinue is encountered, the program continues at the top of thecheckJ statement. Each timecontinue is encountered,checkJ reiterates until its condition returns false. When false is returned, the remainder of thecheckIAndJ statement is completed.

Ifcontinue had a label ofcheckIAndJ, the program would continue at the top of thecheckIAndJ statement.

js
let i = 0;let j = 8;checkIAndJ: while (i < 4) {  console.log(`i: ${i}`);  i += 1;  checkJ: while (j > 4) {    console.log(`j: ${j}`);    j -= 1;    if (j % 2 === 0) continue;    console.log(`${j} is odd.`);  }  console.log(`i = ${i}`);  console.log(`j = ${j}`);}

Output:

i: 0// start checkJj: 87 is odd.j: 7j: 65 is odd.j: 5// end checkJi = 1j = 4i: 1i = 2j = 4i: 2i = 3j = 4i: 3i = 4j = 4

Unsyntactic continue statements

continue cannot be used within loops across function boundaries.

js
for (let i = 0; i < 10; i++) {  (() => {    continue; // SyntaxError: Illegal continue statement: no surrounding iteration statement  })();}

When referencing a label, the labeled statement must contain thecontinue statement.

js
label: for (let i = 0; i < 10; i++) {  console.log(i);}for (let i = 0; i < 10; i++) {  continue label; // SyntaxError: Undefined label 'label'}

The labeled statement must be a loop.

js
label: {  for (let i = 0; i < 10; i++) {    continue label; // SyntaxError: Illegal continue statement: 'label' does not denote an iteration statement  }}

Specifications

Specification
ECMAScript® 2026 Language Specification
# sec-continue-statement

Browser compatibility

See also

Help improve MDN

Learn how to contribute.

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp