两个关键字:
break; //结束循环(终止)
continue; //跳过本次循环。continue下方的代码不再执行,进入下一次循环。
关于死循环:
while(true)
{} for(;;){}
用来实现不知道次数的循环,满足某个条件时终止。while(true){if(满足的条件){break}}
标记举例:给一个for起名字 aa:for(){for(){ break aa; }}break默认终止最近的循环,加标记后可停止标记的循环。
for循环(确定循环次数的时候使用,“次数”可以是变量):
代码示例:
//公鸡2文,母鸡1文,小鸡半文,每种至少一只,100文买100只鸡有多少可能性var cont2 = 0; //用来保存情况数量//嵌套的循环穷举所有情况for(var i = 1; i <= 50; i++){ for(var j = 1; j <= 100; j++){ for(var k = 1;k <= 200; k++){ //满足条件cont2++ if((i*2 + j*1 + k*0.5 == 100)&&(i + j + k == 100)){ console.log("公鸡"+i+"只;母鸡"+j+"只;小鸡"+k+"只"); //在控制台输出每种情况的详情 cont2++; } } }}alert("买小鸡有"+cont2+"种情况");
while-代码示例(直到满足某个条件时终止):
//水仙花数:switchvar g = 0, s = 0, b = 0, sum1=0, sum2="", i = 100;while(i<1000){ g = i % 10; s = parseInt(i / 10 % 10); b = parseInt(i / 100); sum1=g*g*g+s*s*s+b*b*b; if(sum1 != i){ i++; }else{ sum2 += "," + i; i++; }}alert(sum2);
if--代码示例:
//运费问题//将输入的行李重量赋值给wvar w = prompt("输入你的行李重量(KG)"), y;//根据输入的重量计算运费if(w <= 50){ y = w * 0.13;}else{ //原式:50*1.3+(w-50)*0.2; y = w * 0.2 - 3.5;}//输出运费alert("您需要支付的运费是"+y+"元");
switch--代码示例:
//猜拳小游戏(switch)//将你输入的数字赋值给youvar you = prompt("请输入你要出的0-剪刀/1-石头/2-布");//将电脑出的随机数赋值给pcvar pc = parseInt(Math.random() * 3);//alert("电脑出的数是"+pc);//根据出拳情况匹配判断输赢switch (you){ case "0": switch(pc){ case 0: alert("平了"); break; case 1: alert("你输了"); break; case 2: alert("你赢了"); break; default: break; } break; case "1": switch(pc){ case 0: alert("你赢了"); break; case 1: alert("平了"); break; case 2: alert("你输了"); break; default: break; } break; case "2": switch(pc){ case 0: alert("你输了"); break; case 1: alert("你赢了了"); break; case 2: alert("平了"); break; default: break; } break; default: break;}
switch的条件为true;
则case后面的表达式的值为true就进入分支,直到执行到break或switch结束;