让前端飞

重新认识编程中的if语句

2019-11-13  本文已影响0人  itming

今天在工作中遇到一个问题,一直没有找到原因,后来打断点调试后发现程序根本没有走这里。if语句还是没掌握精通。后来自己在vscode中测试了一下,if else if语句,才发现问题所在。if else if语句是如果匹配到了,就不会再去走其他的支路了。我想,这就是if if语句和if else if的区别。如果写多个if的话,它会每个if都去判断一下,但是如果是if else if,只要匹配成功了,就不会再去判断其他的else if了。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <script>
       var a=1;
       var b=2;

      function aa(){
            if(a==1){
                 console.log(a);
            }
            else if(b==2){
                console.log(b);
            }
      }
      aa();
  </script>
</body>
</html>
上面的结果是1 1.png

当然,如果我们写成if if,那么结果就会不一样了

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <script>
         var a=1;
         var b=2;

         //if和else if,如果匹配成功了,后面就不执行了
        function aa(){
              if(a==1){
                   console.log(a);
              }
              if(b==2){
                  console.log(b);
              }
        }
        aa();
    </script>
</body>
</html>
结果是1,2 2.png
上一篇下一篇

猜你喜欢

热点阅读