两个关键字:
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-代码示例(直到满足某个条件时终止):
//水仙花数:switch var 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--代码示例:
//运费问题 //将输入的行李重量赋值给w var 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) //将你输入的数字赋值给you var you = prompt("请输入你要出的0-剪刀/1-石头/2-布"); //将电脑出的随机数赋值给pc var 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结束;