概要:このチュートリアルでは、JavaScriptのbreak
文を使って、ループを途中で強制終了する方法を学びます。
ラベル文
JavaScriptでは、後で使用するために文にラベルを付けることができます。以下はlabel
文の構文です。
label: statement;
Code language: HTTP (http)
この構文では、ラベルには任意の有効な識別子を使用できます。たとえば、次の例では、outer
ラベルを使用してfor
ループにラベルを付ける方法を示しています。
outer: for (let i = 0; i < 5; i++) {
console.log(i);
}
Code language: JavaScript (javascript)
ラベルを定義したら、break
文またはcontinue
文でそれを参照できます。
JavaScript break文の概要
break
文は、for
、do...while
、およびwhile
ループ、switch
文、またはlabel
文などのループを途中で強制終了します。以下はbreak
文の構文です。
break [label];
Code language: JavaScript (javascript)
この構文では、ループまたはswitch
内でbreak
文を使用する場合、label
はオプションです。ただし、ラベル文とともにbreak
文を使用する場合は、ラベルを指定する必要があります。
このチュートリアルでは、break
文を使用してループを途中で強制終了する方法に焦点を当てます。
forループでJavaScript break文を使用する
次のfor
ループ文は、0
から4
までの5つの数値を出力します。
for (let i = 0; i < 5; i++) {
console.log(i);
}
Code language: JavaScript (javascript)
出力
0
1
2
3
4
for
ループを途中で強制終了するには、break
文を使用できます。たとえば、次の例はfor
ループ内でbreak
文を使用する方法を示しています。
for (let i = 0; i < 5; i++) {
console.log(i);
if (i == 2) {
break;
}
}
Code language: JavaScript (javascript)
出力
0
1
2
この例では、ループ内でif
文を使用します。i
の現在の値が2
の場合、if
文はループを終了するbreak
文を実行します。
次のフローチャートは、for
ループでbreak
文がどのように機能するかを示しています。
break文を使用してネストされたループを終了する
ネストされたループは、あるループの中に別のループがあるものです。たとえば、次の例では、ネストされたfor
ループを使用して、1
から3
までの数値のペアを出力します。
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
1 3
2 1
2 2
2 3
3 1
3 2
3 3
内側のループ内でbreak
文を使用すると、内側のループのみが終了します。例を挙げます。
for (let i = 1; i <= 3; i++) {
for (let j = 1; j <= 3; j++) {
if (i + j == 4) {
break;
}
console.log(i, j);
}
}
Code language: JavaScript (javascript)
出力
1 1
1 2
2 1
この例では、i
とj
の合計が4
の場合、break
文は内側のループを終了します。ネストされたループを終了するには、ラベル文を使用します。例えば:
outer: for (let i = 1; i <= 3; i++) {
for (let j = 1; j <= 3; j++) {
if (i + j == 4) {
break outer;
}
console.log(i, j);
}
}
Code language: JavaScript (javascript)
出力
1 1
1 2
この例では、外側のループにouter
というラベルを付けます。内側のループ内で、break
文にouter
ラベルを指定します。i
とj
の合計が4
の場合、break
文はネストされたループを終了します。
whileループでJavaScript break文を使用する
次の例は、while
ループを使用して、1から5までの5つの数値をコンソールに出力します。
let i = 0;
while (i < 5) {
i++;
console.log(i);
}
Code language: JavaScript (javascript)
出力
1
2
3
4
5
for
ループと同様に、break
文はwhile
ループを途中で強制終了します。たとえば:
let i = 0;
while (i < 5) {
i++;
console.log(i);
if (i == 3) {
break;
}
}
Code language: JavaScript (javascript)
出力
1
2
3
この例では、i
の現在の値が3
の場合、break
文はループを終了します。したがって、出力には3つの数値のみが表示されます。
次のフローチャートは、while
ループでbreak
文がどのように機能するかを示しています。
do…whileループでJavaScript break文を使用する
次の例では、do...while
文を使用して、0から5までの5つの数値をコンソールに出力します。
let i = 0;
do {
i++;
console.log(i);
} while (i < 5);
Code language: JavaScript (javascript)
出力
1
2
3
4
5
while
ループと同様に、break
文を使用してdo...while
ループを終了できます。たとえば:
let i = 0;
do {
i++;
console.log(i);
if (i == 3) {
break;
}
} while (i < 5);
Code language: JavaScript (javascript)
出力
1
2
3
次のフローチャートは、do while
ループでbreak文がどのように機能するかを示しています。
まとめ
break
文を使用して、for
、while
、do...while
などのループを途中で強制終了します。- ネストされたループで使用する場合、
break
文は囲んでいるループを終了します。ネストされたループを終了するには、ラベル文を使用します。