JavaScript 中的条件语句主要包括 if
、else if
、else
和 switch
。
if
语句
if
语句用于根据一个条件判断是否执行某段代码。当 if(...)
语句括号里的条件表达式为 true
,则执行 if
后的 一行 语句。
如果希望控制多行代码,可以使用 {}
将语句括起来。建议每次使用 if
语句都用大括号 {}
来包装代码块,即使只有一条语句,这样可以提高代码可读性。
如果条件表达式为 false
则不执行。
如果 if
后的条件表达式不是布尔值,会先转换为布尔值然后再运算。数字 0
、空字符串 ""
、null
、undefined
和 NaN
都会被转换成 false
。其它值被转换为 true
。
示例:
1 | let age = 18; |
if-else
语句
if-else
语句可根据不同条件执行不同的代码块,如果该表达式的值为 true
,则执行 if
后面的代码块;否则执行 else
后面的代码块。
示例:
1 | let age = 25; |
else if
语句
else if
语句是在 if-else
结构中使用的扩展,允许你添加多个条件进行判断。else if
语句会自上而下依次对 if
后的条件表达式进行求值判断,直到出现 true
条件为止。当出现 true
条件时,后面的条件就不会再继续求值判断了,需要合理安设计条件的排列顺序或增加逻辑运算条件。
示例:
1 | let score = 95; |
switch
语句
switch
语句可替代多个if
判断,根据表达式的值进行多分支选择。switch
语句在执行时,会依次将 switch
后的表达式和 case
后的表达式进行 严格相等 比较
如果比较结果为 true
,switch
语句就执行相应 case
后的代码块,直到遇到最靠近的 break
语句(或者直到 switch
语句末尾)。
如果没有符合的 case
,则执行 default
代码块(如果 default
存在)。
示例:
1 | let day = 7; |
break
终止(结束、跳出)循环
break
用于终止(结束、跳出)当前的循环或 switch
语句,如果没有 break
,则会继续执行后续 case
(即发生“穿透”现象)。
示例:
1 | let day = 2; |