if语句and三元表达式

表达式和语句

表达式

  • 一个表达式可以产生一个值,有可能是运算、函数调用、有可能是字面量。表达式可以放在任何需要值的地方。
  • 特点:表达式会先执行出一个结果,然后再参与其他程序。

语句

  • 语句可以理解为一个行为,循环语句和判断语句就是典型的语句。一个程序有很多个语句组成,一般情况下分号 ; 分割一个一个的语句。
  • 语句可以认为是给计算机的一个指令,执行这段代码。
  • 一般语句以分号结束,特殊的结构除外。

流程控制语句

  • 流程控制语句:通过一些特殊结构可以让 js 代码加载时,要么可以跳过一部分不加载,或者可以循环加载一段代码。
  • 包括:条件分支语句、循环语句。

条件分支语句

if 语句

if 语句是最常用的条件分支语句,作用就是通过某个指定的判断条件,决定走哪个分支的代码。

  • if:如果
  • else:否则

总结:如果条件表达式为真 true,执行结构体 1,否则执行结构体 2。

      if (condition expression 条件表达式) {
          statement1 结构体;
      } else {
          statement2 结构体;
      }
  • condition expression:条件表达式,可以是任意的代码或者表达式,参与程序过程都会强制得到一个布尔值执行结果(js 中遇到任何表达式都会先计算出一个结果然后才能继续参与程序)。
  • statement:结构体。js 中可以用 {} 包括一行到多行语句,这些语句整体组成了一个结构体,结构体中的语句要执行就都执行,要不执行就都不执行。
var score = parseFloat(prompt("请输入您的成绩", "68"))
        if (score>=60) {
            alert("你及格了")
        } else {
            alert("你没及格")
        }
注意事项
  • if 语句可以实现选择的功能,两个分支可以选择一个执行,不会都执行。
  • if 语句可以不写 else 分支,表示条件成立就执行后面的结构体,如果条件不成立,直接跳出 if 语句不执行。
  • if 语句后面的结构体如果是单行语句组成,可以省略 {} 不写。不建议省略大括号,容易出现程序错误。
  • if 语句能够控制自己内部的流程,但是不论走哪个分支,结束后都要继续执行 if 语句后面的其他语句,叫做殊途同归现象。
多分支if语句
  • 包含多个判断条件,对应多个分支。
  • 语法:if……else if……else if……else ……
  • 如果……否则 如果……否则 如果……否则 ……
    if (条件1) {
        满足条件1,执行的结构体
    } else if (条件2) {
        不满足条件1,满足条件2,执行的结构体
    } else if (条件3) {
        不满足条件1/2,满足条件3,执行的结构体
    } else {
        不满足前面所有条件,执行的结构体
    }
案例

利用多分支 if 语句细分班级成绩区间。

  • 优秀:85-100
  • 良好:75-84
  • 及格:60-74
  • 不及格:60以下
var score = parseFloat(prompt("请输入您成绩", "68"))
if (score >= 85) {
    alert("优秀")
} else if (score >= 75) {
    alert("良好")
} else if (score >= 60) {
    alert("及格")
} else {
    alert("不及格")
}
注意
  • 多分支 if 语句中可以有多个 else if 的分支,但是 else 分支只能有一个,必须出现在最后,作为备用的选项,而且 else 也可以省略不写,表示前面条件如果都不满足,直接跳出不走任何分支。
  • 多分支 if 语句有跳楼现象:条件从上往下依次验证,如果满足了某个条件,会立即执行后面的结构体,执行完之后,不会再往后验证其他的条件了(后面的不会执行),而是从这一层直接跳楼跳出if语句,这就是跳楼现象。
if 语句嵌套
  • if 语句的结构体部分,代码可以是任意的代码,甚至是另外一组 if 语句。也就是 if 语句内部嵌套了 if 语句。
  • 如果想执行内部 if 语句的某个分支,必须满足外部 if 语句的条件,同时还要满足内部 if 语句的某个条件。
  • 优点:可以简化多分支 if 语句。

案例

  • 利用 if 语句嵌套判断一个人是否退休。
  • 男性:60 岁退休
  • 女性:55 岁退休

注意!
=表示赋值,==/===等于号才是等于!

多分支语句书写

var sex = prompt("请输入您的性别", "女");
var age = parseInt(prompt("请您的年龄", "60"));
if (sex == "男" && age >= 60) {
    alert("您退休了")
} else if (sex == "男" && age 60) {
    alert ("您没退休")
} else if (sex == "女" && age >55) {
    alert("恭喜.您退休了")
} else {
    alert("坚持")
}

嵌套语句书写

var sex = prompt("请输入您的性别", "女");
var age = parseInt(prompt("请您的年龄", "60"));
if (sex == "男") {
    if (age < 60) {
        alert("您没退休")
    } else {
        alert("您退休了")
    }
} else {
    if (age >= 55) {
        alert("恭喜.您退休了")
    } else {
        alert("坚持")
    }
}
三元表达式

又叫三元运算符,必须有三个操作数参与的运算。

  • 操作符号:? :
  • 表达式:在参与 js 程序时,都必须先计算出表达式结果,才能参与后续程序。
  • 由于三元表达式具备了一些选择的效果,所以也是一种条件分支语句。
三元表达式语法
  • boolean_expression ? true_value : false_value;
  • boolean_expression:布尔表达式,表达式在参与三元运算中必须求得一个布尔类型的值,要么是 true,要么是 false,结果作为判断依据,判断结果到底是前面的值还是后面的值。
  • true_value:布尔表达式的值为真时,三元表达式的结果。
  • true ? 1 : 0;
  • false_value:布尔表达式的值为假时,三元表达式的结果。
  • false ? 1 : 0;
  • 作用:根据布尔表达式的结果,如果为真,三元表达式结果就是真值,如果为假,三元表达式结果就是假值。
三元表达式优点

虽然if语句可以模拟三元表达式,但是三元表达式有自己的优点:

  • 二选一的情况下,三元表达式结构更加简单。
  • 三元表达式作为一个表达式参与程序时必须运算出结果才能参与,可以利用这个特点,将二选一结果赋值给一个变量。
var a = 5;
var b = a >= 5 ? 1 : 0;
  • 所以遇到给一个变量根据条件二选一赋值的情况,可以使用三元表达式。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值