Skip to content

If语句

If语句有三种使用:单分支, 双分支, 多分支

单分支

js
if (条件) {
  条件为真(满足条件)后执行的代码
}

条件为true时, 执行大括号内的代码

js
// 条件为true, 执行大括号内代码
if (2 === 2) {
  console.log("执行")
}
// 条件为false, 不执行大括号内代码
if (2 === "2") {
  console.log("执行")
}

条件返回的结果如果不是布尔型, 会发生隐式转换为布尔型(0和空字符串会转为false, 其他都是true)

js
// 条件为0, 隐式转换为false, 不执行大括号内代码
if (0) {
  console.log("执行")
}
// 条件为空字符串, 隐式转换为false, 不执行大括号内代码
if ("") {
  console.log("执行")
}
  • 如果大括号内只有一个语句, 大括号可以省略, 但是不推荐
js
// 只有一个语句, 大括号可以省略
if (1 == 1) console.log("执行")

双分支

js
if (条件) {
  条件为真(满足条件)后执行的代码
} else {
  条件为假(不满足条件)后执行的代码
}
js
if (2 === 2) {
  console.log("真")
} else {
  console.log("假")
}

多分支

js
if (条件1) {
  代码1
  条件1为真(满足条件)后执行的代码
} else if (条件2) {
  代码2
  条件2为真(满足条件)后执行的代码
} else if (条件3) {
  代码3
  条件3为真(满足条件)后执行的代码
} else {
  代码4
  以上条件都为假(都不满足条件)后执行的代码
}

先判断条件1, 如果满足条件1就执行代码1, 其他不执行

如果不满足条件1, 则向下判断条件2, 满足条件2就执行代码2, 其他不执行

如果不满足条件2, 则向下判断条件3, 满足条件3就执行代码3, 其他不执行

如果都不满足, 则执行代码4

多分支每次只会有一段代码被执行

理论上else if可以写无数个, 这里为了演示, 只写了3个