什么是分支语句
JS 代码是从上往下按照顺序依次执行的,从第一行代码一直执行到最后一行代码
如果有一种情况是我有两段代码,我只需要执行其中一个即可,那么就可以用到分支语句
简单来说:分支语句就是根据我们设定好的条件来决定要不要执行某些代码
if 分支语句
- if 分支语句的基本书写
if(条件){ 想要执行的代码 }
if(true){
consloe.log("因为条件是 true 所以可以打印")
}
// if:关键字,表明后续是一段 if 分支语句
// ():小括号内部填写条件,用于决定是否执行后续内容
// {}:花括号内部填写要执行的分支代码,如果条件为真,则会执行
- if...else 语句的基本书写
if(条件){ 条件为真时,执行代码 } else { 条件为假时,执行的代码 }
if(true){
console.log('因为条件是 true,所以可以打印出来')
} else {
console.log('因为条件是 true 所以不可以打印出来')
}
// else: 表明前边条件都为false时,执行后续的花括号内的代码
- if...else if 语句的基本书写
if(条件1){ 条件1成立的时候执行的代码 } else if (条件2) { 条件2成立的时候执行的代码 } else { 上述条件全不满足的时候执行的条件
if(false) {
console.log("条件不成立不执行")
} else if(true) {
console.log("条件成立 执行")
} else {
console.log("上述条件有成立的 不执行")
}
如果第一个条件为 true ,那么就会执行后面 {} 的内容
如果第一个条件为 false,那么就会判断第二个条件
如果第二个条件也为 false,那么会依次往后执行
多个 {} 只会有一个被执行,一旦有一个条件为 true,后面的就不再判断了
如果所有的条件都为 false,那么会执行最后的 else {} 分支
如果所有的条件都为 false,且没有最后的 else {} 分支,那么当前 if 分支不会有任何代码段被执行
var num = 100
if(num === 100){
console.log(num = "101")
} else if(num === 101){
console.log(num = "102")
}
// 101
switch 分支语句
switch 也是条件判断语句的一种,是对于某一个变量的判断(全等的判断,数据类型不一致时会导致判断失败)
- switch 分支语句的基本书写
switch(要判断的变量){
case 情况1:
情况1要执行的代码
break
case 情况2:
情况2要执行的代码
break
default:
上述情况都不满足的时候执行的代码
}
var num = 103
switch(num) {
case 100:
console.log("num === 100")
break
case 200:
console.log("num === 200")
break
case 103:
console.log("num === 103")
break
default:
console.log("上述 case 都不符合")
}
2.switch 穿透语句的基本书写
从第一个满足条件的 case 开始
如果没有 break,那么后面的条件不在判断,直接执行代码
直到遇到一个 break 或者 switch 结束
输入一个数字判断当前月份有几天,2月按照28天
var month = 7
switch(month){
case 1:
case 2:
case 3:
case 5:
case 7:
case 8:
case 10:
case 11:
console.log(month + "月有31天")
case 4:
case 6:
case 9:
case 12:
console.log(month + "月有30天)
case 2:
console.log(month + "月有28天")
break
}
三元表达式(三元运算/三目运算/三目
条件 ? 条件为真执行的代码 : 条件为假执行的代码
意义:对 if...else 语句的简写
注意:执行代码的位置只能写一句话
// 执行代码
var num = 5
num % 2 == 0 ? console.log("num为偶数") : console.log("num为奇数") // "num为奇数"
// 给变量赋值
var num = 1 // 暂且规定 num === 1 的时候代表为男性,num === 2 的时候代表为女性
var gender = num == 1 ? "男" : "女"
console.log(gender) // "男"