什么是分支语句
根据我们设置好的条件,然后来决定执行哪些代码
if 分支语句的基本书写
if (条件) {满足条件的时候执行的代码, 如果不满足, 这里边的代码永远不执行}
条件最终会返回一个布尔值, 如果为真, 那么会执行对应的代码
如果为假, 那么不会执行
例:var a = 3
if (a === 1) { // 如果 a === 1 这个条件成立, 那么会执行打印 1
console.log(1)
}
if...else... 的嵌套写法
var a = 2
if (a === 1) {
console.log(1)
} else if (a === 2) {
console.log(2)
} else {
console.log('a 不等于 1或者2')
}
switch 分支语句
switch 分支语句的基本书写
switch (要判断的变量) {
case 情况1:
情况1要执行的代码
break;
case 情况2:
情况2要执行的代码
break;
default:
上述情况都不满足时执行的代码
}
注意: switch...case 在判断时, 执行的时 全等, 也就是 === ,所以数据类型不同时, 也不会正确执行
switch 穿透语句的基本书写
switch 在书写的时候 如果不写 break 会出现穿透现象
穿透现象:
找到第一个满足的 case 的时候, 开始执行这个代码
执行完毕如果没有 break 会继续执行下一个 case
直到 遇到一个 break 或者 分支语句全部执行完毕
例://用switch穿透语法简化代码
var mouth = 5
switch (mouth) {
case 1 :
case 3 :
case 5 :
case 7 :
case 8 :
case 10 :
case 12 :
console.log('本月有 31 天')
break;
case 4 :
case 6 :
case 9 :
case 11 :
console.log('本月有 30 天')
break;
case 2 :
console.log('2月有 28 天')
break;
}
三元表达式
别名:三目,三目运算符,三目表达式,问号冒号表达式
语法:条件 ? 条件为真的时候执行的代码 : 条件为假的时候执行的代码
意义: 对if 分支语言做一个简化
注意: 不管条件真还是假的代码 都只能写一行
例:var a = 100
a > 50 ? console.log('a 的值大于五十') : conlose.log('a 的值小于50')
//利用三元表达式 给变量赋值
var num = 1 //当num === 1 那么代表为男性,num 不等于 1 的时候代表为 女性
var gender = num === 1 ? '男' : '女'
console.log(gender)