0319-流程控制

  两个关键字:

    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+"种情况");
嵌套for循环买小鸡

  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);
while-水仙花数

  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+"元");
if判断运费问题

  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结束;

原文地址:https://www.cnblogs.com/flypea93/p/8603266.html