一起看海 发表于 2024-1-2 10:25:10

if else if else 语句

if 和 if else 语句都只有一个条件表达式,而 if else if else 语句是它们更高级的形式,在 if else if else 语句中允许您定义多个条件表达式,并根据表达式的结果执行相应的代码,语法格式如下:
if (条件表达式 1) {
    // 条件表达式 1 为真时执行的代码
} else if (条件表达式 2) {
    // 条件表达式 2 为真时执行的代码
}
...
else if (条件表达式N) {
    // 条件表达式 N 为真时执行的代码
} else {
    // 所有条件表达式都为假时要执行的代码
}

提示:if else if else 语句在执行过程中,当遇到成立的条件表达式时,会立即执行其后{ }中的代码,然后退出整个 if else if else 语句,若后续代码中还有成立的条件表达式,则不会执行。

示例代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>JavaScript</title>
</head>
<body>
    <script type="text/javascript">
      var now = new Date();         // 获取当前的完整日期
      var dayOfWeek = now.getDay();   // 获取一个 0-6 之间的数字,用来表示当前是星期几,0 表示星期日、1 表示星期一、以此类推
      if(dayOfWeek == 0) {            // 判断当前是星期几
            alert("星期日")
      } else if(dayOfWeek == 1) {
            alert("星期一")
      } else if(dayOfWeek == 2) {
            alert("星期二")
      } else if(dayOfWeek == 3) {
            alert("星期三")
      } else if(dayOfWeek == 4) {
            alert("星期四")
      } else if(dayOfWeek == 5) {
            alert("星期五")
      } else {
            alert("星期六")
      }
    </script>
</body>
</html>
运行结果如下图所示:
https://c.biancheng.net/uploads/allimg/210923/112U25V3-2.gif
注意事项
使用嵌套 if else 时,如果只有一行语句,也应该使用大括号包裹起来,避免条件歧义。

例如,下面嵌套 if else 就容易引发误解:
if(0)
    if(1)
      console.log(1);
else
    console.log(0);
针对上面代码,JavaScript 解释器将根据就近原则,按如下逻辑层次进行解释:
if(0)
    if(1)
      console.log(1);
    else
      console.log(0);
因此使用大括号可以避免很多问题:
纯文本复制
if(0){
    if(1) console.log(1);
}else{
    console.log(0);
}

页: [1]
查看完整版本: if else if else 语句