重新认识编程中的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