条件语句+循环语句(条件语句)

本文深入解析JavaScript中的if、else、elseif、switch语句的使用方法,以及如何通过三目运算符简化条件判断。文章还介绍了循环语句的执行逻辑,并提供了丰富的示例帮助理解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言在javascript语言当中语句的执行顺序有三种:分别是按条件语句执行,按循环语句执行,按上下文的顺序执行
而iif , else if , elseswitch语句是按条件语句执行,想for这种循环语句就是按照循环语句执行,而js默认就是按照上下文代码的顺序执行的

if,else if,else判断语句

假设:今天大扫除让(1号-20号)的同学大扫除

var num = 10

储存变量的10号同学去大扫除

if(num){
      console.log("我走进来了")
 }//当num值转换成布尔值的时候是真true才能执行花括号中的代码

当条件为假走到另一个分支(条件)

if(0){
     console.log("条件为 真我走进来了")
}else{
     console.log("条件为 假我走进来了")
}

假设:大扫除的时候前20名的同学去扫地

 var num = 10
   if(0<num<20){
        console.log("扫地")
   }

为什么0<num<20为真分析

 0<num<20
   0<10 --> true
   true<20 --> true
   
 0<num<20      
   0<30  -->  true
   true<20 --> true
 数学中  0<num<20  控制变量的范围 (0,20)
  • 数学中 0<num<20 控制变量的num范围(0,20)区间的
  • JS中 num>0 && num<20 控制变量num的范围 (0,20)区间(必须&&两侧都为真true)

假设:大扫除的时候前20-40名的同学去扫地

var num = 30;//控制一个变量应当走到那个代码块中(控制流程)
        if(num>0 && num<20){
            console.log("扫地")
        }else if(num >=20 && num <40){
            console.log("上网")
        }else if(num>=40 && num < 60){
            console.log("拖地")
        }else if(num>=60 && num < 80){
            console.log("唱跳")
        }else{else上面所有条件都不成立的所有情况
            console.log("rap")
        }(前面的条件都不满足才走到这个条件里来)
   if(条件1){
          条件1为真,执行的JS代码
      }else if(条件2){
          条件2为真,执行的JS代码
      }else if(条件3){
          条件3为真,执行的JS代码
      }else{
          条件1 2 3 不满足时 执行的JS的代码
   }

if只能有一个else if可以有许多个 else只能有一个
也可以直接写一个if

如果两个条件都满足该执行那个代码块

  var num = 30;
        if(num>1){
            console.log("if 成立 执行代码")
        }else if(num>2){
            console.log("else 成立 执行代码")
        }

当条件第一次成立的时候就会执行对应的代码后面的条件或者是后面的条件多次成立时会执行第一次对应成立的代码块所有的条件都是互斥的

如果同时满足多个条件,只会执行第一个条件成立的程序

  • if 语句 - 只有当指定条件为 true 时,使用该语句来执行代码。
  • else if 语句 - 检测一个新的条件,如果第一个条件为false使用该语句来执行代码。
  • else 语句 如果 if 语句或else if语句 的条件为false,则执行该代码块
  • if else 语句在js中用与运算符写,如果同时满足多个条件,只会执行第一个条件成立的程序,
    条件的结果最终是为了得到布尔值 true或者false
  • if只能有一个else if可以有许多个 else只能有一个

分清普通对象和js代码块
在这里插入图是
从js的数据类型角度他是个普通对象(里面没有js语句)
在这里插入图片描述
这里面放置了一句或者是多句的js语句那么它是js代码块

三目运算符

三目运算符:简化 ifelse语句的

 var num = 20;
        if(num<10){
            console.log("烫头")
        }else{
            console.log("rap")
        }

三目运算符:是简化 ifelse语句的只能简化if else

  if(条件){
       条件为真 执行的JS代码
   }else{
       条件为假 执行的JS代码
   }
   条件?条件为真 执行的JS代码:条件为假 执行的JS代码;

下面的三目是简写成上面的if else

简写成三目:
num<10?console.log("烫头"):console.log("rap")

当一个if里有2个数据该怎么简化成三目

  var num = 5;
        if(num<10){
            console.log("烫头");
            console.log("吸烟")
        }else{
            console.log("rap");
        }

简化成三目

 num < 50?(console.log("烫头"),console.log("吸烟")):console.log("rap")
 //条件为正有2句js代码就不要用三目来简化了

条件?(条件为真 执行的JS代码1,条件为真 执行的JS代码2):条件为假 执行的JS代码;

当if条件为空时怎么用三目来简化

     var num = 15;
        if(num<15){
           
        }else{
            console.log("rap");
        }

简化成三目

 num<10?null:console.log("rap");
//用null来占位(可以占位的有布尔值转换成false)

条件?占位:条件为假 执行的JS代码;

当else条件为空时怎么用三目来简化

  var num = 15;
        if(num<10){
            console.log("烫头")
        }else{
            
        }

简化成三目

 num<10? console.log("烫头"):null;
 //用null来占位(可以占位的有布尔值转换成false)

条件?条件为真 执行的JS代码:占位;

一般不用布尔值为false占位的,认识即可

switch判断语句

switch:控制变量该走哪一个代码块的

    var num = 4;
    switch(num){
        case 2:
            console.log('我的学号是2');
            break;
        case 4:
            console.log('我的学号是4');
            break;
        case 6:
            console.log('我的学号是6');
            break;
        case 8:
            console.log('我的学号是8');
            break;
        case '10':
            console.log('我的学号是10');
            break;
        default:
            console.log('我的学号不是 2 4 6 8 10');
    }
    switch( 变量 ){
        case 数据1:
              条件成立,执行的JS代码;
              break;
        case 数据2:
              条件成立,执行的JS代码;
              break;
        case 数据3:
              条件成立,执行的JS代码;
              break;
         default:
              上述条件不成立,执行的JS代码
     }
  • case是场景(可以理解为代码块)
  • 变量和case后面的数据 在判断时 是全等 ===为(true)真才能执行
  • breakswitch中的作用是 让程序终止(如果不写则会这块代码块会漏掉像沙漏一样)
  • switch后面填true用于区间(灵活写法),后面填变量是固定写法
  • default所有条件不成立就写default(默认)

练习

    var num = parseFloat('height:20.3px');
    -->parseFloat作用:从左往右提取数字,遇到非数字除了(数字,小数点,负号)就会停止
    -->遇到了字母h停止了提取-->结果是NaN
    if(num==20.3){-->NaN==20.3(NaN和任何数据类型做==判断结果都是false)
        console.log(20.3);-->结果是false无法打印
    }else if(num==NaN){--> NaN==NaN -->ftyalse
        console.log(NaN)-->结果是false无法打印
    }else if(typeof num=='number'){
    -->1.typeof NaN=="number"
    -->2.typeof优先级大于==(相当于typeof NaN)NaN(是一个不是数字的数字)
    -->3.”number“=="number"
        console.log('number');-->结果是true打印的是number
    }else{
        console.log('num 什么都不是');
        -->当上面的结果都为假(false)时打印此字符串
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值