JS流程控制语句_选择分支

1、if语句
在一个 指定的条件成立时执行某一段代码(执行语句)
语法:
if(条件表达式){
   //代码块;
}
if(条件表达式){
  //代码块1;
}else{
  //代码块2;
}
 如果条件表达式1成立,就不会执行下面的 else if
if(条件表达式1){
   //执行体1;
}else if(条件表达式2){
   //执行体2;
}else{
   //执行体3;
}
步骤一:首先判断条件表达式1,如果为true,则执行代码块1,如果为false,则不执行代码块1,代码继续往下;
步骤二:首先判断条件表达式2,如果为true,则执行代码块2,如果为false,则不执行代码块2,代码继续往下;
步骤三:如果所有条件表达都为false,则执行最后else语句里的代码块4;如果之前已经符合条件判断的则不会执行else里的代码块
<script>
    let a=17;
    if (a>18){
        document.write("可以上网!");
    }else {
        document.write("年龄未满,不可以再来!");
    }
    //prompt 是输入框,为输入时默认值是60
    let grade=prompt("请输入你的成绩:");
    if (100>grade&&grade>=90){
        //document.write("奖励游戏机");
        alert("奖励游戏机");
    }else if (90>grade&&grade>=79){
        document.write("奖励台湾一日游")
    }else if (79>grade&&grade>=70){
        document.write("奖励100元")
    }else if (69>grade&&grade>=60){
        document.write("奖励两张试卷")
    }else if (0<grade&&grade<=59){
            document.write("奖励大嘴巴子")
    }else{
        document.write("输入有误!")
    }
</script>
2、用户在网页中输入的方法
prompt("");   //参数1:提示信息;参数2:默认值;
3、JS的判断条件的输入值的结果
数据类型(NaN除外)
true
false
number
非0
0
string
非空串
空串
object
非空
Null
undefined
永远都是假的
NaN(not a number)
永远都是假的
注意:建议写代码的时候,判断条件使用boolean类型
<script>
    //数值类型只有0是假的,其他都是真的
    if (0){
        document.write("真"+"<br/>");
    }else{
        document.write("假"+"<br/>");
    }
    //字符串类型,只有空串是假的,其他都是真的
    if (""){
        document.write("真"+"<br/>");
    }else{
        document.write("假"+"<br/>");
    }
    //对象类型,只有null是假的,
    var person =null;   //打印出来是object(有等号)   var per; 这个打印出来是undefined(没有等号)
    if (null){
        document.write("真"+"<br/>");
    }else{
        document.write("假"+"<br/>");
    }
    //undefined类型,未定义的永远都是假的
    if (u){
        document.write("真"+"<br/>");
    }else{
        document.write("假"+"<br/>");
    }
    //字符串类型,只有空串是假的,其他都是真的
    let e;
    if (""){
        document.write("真"+"<br/>");
    }else{
        document.write("假"+"<br/>");
    }
    
    //NaN:本身不是一个数据类型,而是开发人员的代码中的不被JS编译的内容
    if (+"<i>"){
        document.write("真"+"<br/>");
    }else {
        document.write("假"+"<br/>"+e);
    }
</script>
4、switch 语句
语法:
//变量名也可以直接写死为true ,还可以写表达式
switch(变量名){
     case 常量值:
      break;
     case 常量值:
      break;
     default:
      break;
}
解析执行过程:如果变量名等于某个分支的常量值,就执行这个代码块;如果所有的条件都不满足就执行default里面的代码块。
switch(true){
     case 表达式:
      break;
     case 表达式:
      break;
     default:
      break;
}
//练习一:
<script>
    //需求:用户输入1——12月的数字,如果不是则输出:您输入的月份不正确。
    //如果输入的是,则打印出季节 234春季  567夏季  8910秋季 11 12 1冬季
    let yea=parseInt(prompt("请输入月份:"));
    switch (yea) {
        case 2:
        case 3:
        case 4:
            alert("现在是春季!");
            break;
        case 5:
        case 6:
        case 7:
            alert("现在是夏季!");
            break;
        case 8:
        case 9:
        case 10:
            alert("现在是秋季!");
            break;
        case 11:
        case 12:
        case 1:
            alert("现在是冬季!");
            break;
        default:
            alert("您输入的不是数字!");
            break;
    }
</script>
//练习二:
<script>
    //prompt 是输入框,为输入时默认值是60
    let grade=parseInt(prompt("请输入你的成绩:"));
    switch (true) {  //注意:这里不可以用1代替true,在switch中不可以这样做
        case (100>grade&&grade>=90):
            alert("奖励游戏机");
            break;
        case (90>grade&&grade>=80):
            alert("奖励台湾一日游");
            break;
        case (80>grade&&grade>=70):
            alert("奖励100元");
            break;
        case (70>grade&&grade>=60):
            alert("奖励两张试卷");
            break;
        case (0<grade&&grade<=60):
            alert("奖励大嘴巴子");
            break;
        default:
            alert("输入有误!");
            break;
    }
</script>
注意:在js当中,比较运算符 会自动将字符串转换成数值型进行
小结
如果switch的case后面要使用表达式,switch后面的值 一定要写成true
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值