概要: このチュートリアルでは、JavaScriptのcontinue
文を使用して、ループの現在の反復処理をスキップする方法を学びます。
JavaScriptのcontinue文の紹介
continue
文は、for、while、およびdo...whileループなどのループの現在の反復処理における文の実行を終了し、すぐに次の反復処理に進みます。
continue
文の構文は次のとおりです。
continue [label];
Code language: JavaScript (javascript)
この構文では、labelはオプションです。これは、文のラベルに関連付けられた有効な識別子です。label文の詳細については、break
文のチュートリアルを参照してください。
通常、continue
は次のようにif
文とともに使用します。
// inside a loop
if(condition){
continue;
}
Code language: JavaScript (javascript)
この構文では、if
文は、ループ内でcontinue
文を実行するための条件を指定します。
forループでのcontinue文の使用
for
ループでcontinue
文を使用する場合、ループ全体が完全に終了するわけではありません。代わりに、iterator
式にジャンプします。
次のフローチャートは、for
ループでcontinue
文がどのように機能するかを示しています。
次の例では、for
ループでcontinue
を使用して、コンソールに奇数を表示します。
for (let i = 0; i < 10; i++) {
if (i % 2 === 0) {
continue;
}
console.log(i);
}
Code language: JavaScript (javascript)
出力
1
3
5
7
9
この例では、for
ループは0
から9
までの数値を反復処理します。
i%2
は、i
の現在の値を2
で割った余りを返します。
余りがゼロの場合、if
文はcontinue
文を実行し、ループの現在の反復処理をスキップして、イテレータ式i++
にジャンプします。そうでない場合は、i
の値をコンソールに出力します。
whileループでのcontinue文の使用
while
ループでcontinue
文を使用する場合、ループの実行が完全に終了するわけではありません。代わりに、条件に戻ってジャンプします。
次のフローチャートは、while
ループ文でcontinue文がどのように機能するかを示しています。
次の例では、while
ループでcontinue
文を使用して、1から10までの奇数を表示します。
let i = 0;
while (i < 10) {
i++;
if (i % 2 === 0) {
continue;
}
console.log(i);
}
Code language: JavaScript (javascript)
出力
1
3
5
7
9
ラベル付きのcontinue文の使用例
continue
文には、次のようにオプションのラベルを含めることができます。
continue label;
Code language: JavaScript (javascript)
次の入れ子になったループは、1から2までの数値のペアを表示します。
for (let i = 1; i < 3; i++) {
for (let j = 1; j < 3; j++) {
console.log(i, j);
}
}
Code language: JavaScript (javascript)
出力
1 1
1 2
2 1
2 2
以下は、ラベル付きのcontinue
文の使用方法を示しています。
outer: for (let i = 1; i < 4; i++) {
for (let j = 1; j < 4; j++) {
if (i + j == 3) continue outer;
console.log(i, j);
}
}
Code language: JavaScript (javascript)
出力
1 1
3 1
3 2
3 3
まとめ
- JavaScriptの
continue
文を使用して、ループの現在の反復処理をスキップし、次の反復処理を続行します。