条件分支语句

这篇博客详细介绍了JavaScript中的条件控制结构,包括if语句(单条件、双条件、多条件分支)和switch语句,强调了switch的穿透特性。同时,也讲解了三元运算符的使用,包括基本的三元运算及多重嵌套,展示了其在简化代码中的作用。示例代码帮助理解各种条件判断的执行逻辑。
摘要由CSDN通过智能技术生成

目录

1、分支结构

        1、IF语句分支 (当判断语句的条件为真时执行代码块里面的)

                1、if语句

                2、if else语句 

                3、if else if ... 语句

                4、if else if … else 语句

        2、switch语句

        switch语句的穿透特性

2、三元运算


1、分支结构

        1、IF语句分支 (当判断语句的条件为真时执行代码块里面的)

                1、if语句

// 条件为 true 的时候执行 {} 里面的代码
if (true) {
  alert('因为条件是 true,我会执行')
}

// 条件为 false 的时候不执行 {} 里面的代码
if (false) {
	alert('因为条件是 false,我不会执行')    
}
//并不会执行alert里面的指令

                2、if else语句 

//进行判断、如果满足if的判断条件就执行if下的语句快,然后跳出判断
//如果不满足if下的判断条件,就跳过if下的语句快,直接执行else下的语句块,并跳出判断
var age = 25
if(age >= 18){
    console.log('成年人')
}else{
    console.log('未成年人')
}

                3、if else if ... 语句

//多个判断条件,依次向下执行,当出现一个判断条件成立时,执行该判断条件下的语句快,并跳出判断,不会执行后面的判断
//当没有一个条件能够满足的,将不会有语句快执行

if(判断条件一){
    语句快1
}else if(判断条件二){
    语句块2
}

var num = 10
if(num > 10){
    console.log('数字大于10')
}else if(num < 10){
    console.log('数字小于10')
}
//语句块都不执行

                4、if else if … else 语句

//当问题实现时一部分能进行判断,一部分不能判断或者执行语句一样时,将后面一类归一
var grade = 89
if(grade > 100){
    console.log('成绩不能大于100')
}else if(grade >= 90 && grade <=100){
    console.log('等级为A');
}else if(grade >= 80 && grade < 90){
    console.log('等级为B');
}else if(grade >= 70 && grade < 80){
    console.log('等级为C');
}else if(grade >= 60 && grade < 70){
    console.log('等级为D');
}else{
    console.log('不合格')
}

        2、switch语句

//对某一值进行判断
//switch 语句只能对值进行判断,不能实现比较语句

//对成绩等级判断、使用switch更加简洁
var score = 95
var grade
switch (parseInt(score / 10)) {
    case 10:
    case 9:
        grade = 'A'
        break
    case 8:
        grade = 'B'
        break
    case 7:
        grade = 'C'
        break
    case 6:
        grade = 'D'
        break
    default:
        grade = '不及格'
}
console.log(grade)

        switch语句的穿透特性

//当满足某个条件时、如果该case语句下没有加break跳出循环,将会执行后面的case语句快,直到有一个case语句块下有break

某年某月的天数计算使用穿透性质会使代码简洁
var year = 2055
var month = 2
var day
switch (month) {
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12: {
        day = 31
        break
    }
    case 4:
    case 6:
    case 9:
    case 11: {
        day = 30
        break
    }
    case 2:
        if((year % 400 == 0) || ((year % 4 == 0) && (yera % 100 != 0))){
            day = 29
        }else{
            day = 28
        }
}
console.log(year + "年" + month + "月有" + day + "天" )

2、三元运算

//三元运算符等于if else条件判断
//为真执行 : 前面的语句块
//为假执行 : 后面的语句块

var age = 18;
age >= 18 ? alert('已经成年') : alert('没有成年')

//扩展 多重三元运算符嵌套
//输出三个数的最大值
var m = 34
var n = 56
var k = 27 
//方案一
max = (max = (m > n ? m : n) )> k ? max : k
//方案二
var max = a > b ? ( a > c ? a : c ) : ( b > c ? b : c )
console.log(max)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值