JavaScript 制御構造 新しいページはコチラ

提供: yonewiki
移動: 案内, 検索
(continue)
(continue)
345行: 345行:
 
<!--
 
<!--
 
var n = 0;
 
var n = 0;
head:
+
document.write("■処理やり直しパターン1" + "<br />");
document.write("処理やり直し");
+
head: for(var i = 0;i < 10;i++){
for(var i = 0;i < 10;i++){
+
 
     document.write("i = " + i + "<br />");
 
     document.write("i = " + i + "<br />");
 
     if(i > 5){
 
     if(i > 5){
        n++;
+
         if(n < 2){
         if(n < 2) continue head;
+
            n++;
 +
            continue head;
 +
        }
 
     }
 
     }
}
+
}  
+
 
var n = 0;
+
//以下のサンプルでも全く同じ動作になる
document.write("処理やり直し");
+
n = 0;
 +
document.write("■処理やり直しパターン2" + "<br />");
 
for(var i = 0;i < 10;i++){
 
for(var i = 0;i < 10;i++){
 
     document.write("i = " + i + "<br />");
 
     document.write("i = " + i + "<br />");
 
     if(i > 5){
 
     if(i > 5){
         n++;
+
         if(n < 2){
         if(n < 2) continue;
+
            n++;
 +
            continue;
 +
        }
 +
    }
 +
}
 +
 
 +
//ラベルによってcontinueの動作を劇的に変えるサンプル。
 +
var flag = 0;
 +
n = 0;
 +
document.write("■処理やり直しパターン3 ラベルの有効利用" + "<br />");
 +
head2: do{
 +
    document.write("forループ処理" + n + "<br />");
 +
    for(var i = 0;i < 10;i++){
 +
        document.write("i = " + i + "<br />");
 +
         if(i > 5){//iが5を超えて6以上なら、n=0とn=1の2回、処理をやり直し。
 +
                  //n=2の3回目のループではiは10まで変化する。
 +
            if(n < 2){
 +
                n++;
 +
                continue head2;
 +
            }
 +
        }
 
     }
 
     }
}
+
    flag = 1;
 +
}while(flag == 0);
 
-->
 
-->
 
</SCRIPT>
 
</SCRIPT>

2016年2月10日 (水) 00:00時点における版



個人用ツール
名前空間

変種
操作
案内
ツールボックス