continueのサンプル
for(var i=1; i<10; i++ ){
if(i%3 === 0){ continue; } // continue実行時は以下の処理をスキップして次の繰り返し処理へ
document.write(i+"</br>"); // continue実行時は、この行の処理を行わない
}
実行結果
1
2
4
5
7
8
breakのサンプル
for(var i=1; i<10; i++ ){ if(i%3 === 0){ break; } // break実行時は繰り返し処理を終了する document.write(i+"</br>"); }
実行結果
1
2
ネストしたfor文のcontinueのサンプル(ラベルなし)
for (var i=1; i< 3; i++) { for (var j=1; j<10; j++) { if (j%5 === 0) { continue; // ラベルなしcontinueはループの内側の処理をスキップして次の繰り返し処理へ } document.write("jは"+ j + "<br>"); // jが5で割り切れる場合はcontinueによりこの行の処理が実行されない } document.write("iは"+ i + "<br>"); // continueのループ外側なので必ず実行される }
実行結果
jは1
jは2
jは3
jは4
jは6
jは7
jは8
jは9
iは1
jは1
jは2
jは3
jは4
jは6
jは7
jは8
jは9
iは2
ネストしたfor文のcontinueのサンプル(ラベルあり)
var i; var j; lblOuter: // ラベル for (var i=1; i< 3; i++) { for (var j = 1; j<10; j++) { if (j%5 === 0) { continue lblOuter; // ラベル付きのcontinue実行時はラベルの階層の繰り返し処理へスキップする } document.write("jは"+ j + "<br>"); // jが5で割り切れる場合はcontinueによりこの行の処理が実行されない } document.write("iは"+ i + "<br>"); // continueのラベルの階層より内側なのでcontinue実行時はこの行の処理が実行されない }
実行結果
jは1
jは2
jは3
jは4
jは1
jは2
jは3
jは4
ネストしたfor文のbreakのサンプル(ラベルなし)
for (var i=1; i< 3; i++) { for (var j = 1; j<10; j++) { if (j%5 === 0) { break; // ラベルなしのbreakはループ内側の処理を終了する } document.write("jは"+ j + "<br>"); // jが5で割り切れる場合はbreakにより繰り返し処理が終了し、この行の処理は実行されない } document.write("iは"+ i + "<br>"); // breakのループ外側なので必ず実行される }
実行結果
jは1
jは2
jは3
jは4
iは1
jは1
jは2
jは3
jは4
iは2
ネストしたfor文のbreakのサンプル(ラベルあり)
var i; var j; lblOuter: // ラベル for (var i=1; i< 3; i++) { for (var j = 1; j<10; j++) { if (j%5 === 0) { break lblOuter; // ラベル付きのbreak実行時はラベルの階層の繰り返し処理を終了する } document.write("jは"+ j + "<br>"); // jが5で割り切れる場合はbreakによりこの行の処理が実行されない } document.write("iは"+ i + "<br>"); // breakのラベルの階層より内側なのでbreak時は繰り返し処理が終了し、この行は実行されない }
実行結果
jは1
jは2
jは3
jは4