if条件后加大括号{}和不加大括号{}的区别

【前言】

    本文简单说下if() 加大括号 和不加大括号有什么区别

    简单点:有括号的话,if语句控制{}里面的所有语句,没括号的话,if语句只控制最近的一行。每句代码以分号 ; 分隔开来。

 

【主体】

    先来看个简单的例子

 

demo1(if语句后跟完整语句):

 

if(1<2){var a = 10,b=20,c=30;}
console.log(a,b,c)
   这时满足条件,所以a,b,c都会被赋值,输出结果为10 20 30

if(1<2) var a = 10,b=20,c=30;
console.log(a,b,c)
   此时满足条件,a,b,c都被赋值,输出结果为10 20 30

 

demo2(if语句后跟分隔语句):

if(1<2) var a = 10;var b=20;var c=30;
console.log(a,b,c)
   此时条件成立,所以输出10 20 30

if(1>2) var a = 10;var b=20;var c=30;
console.log(a,b,c)
   此时条件不成立,输出20 30。没有输出a的值,由此可以得出【如果不加花括号,那么当条件不成立时,只会执行最近的一句代码】

 

【分享】

1.不加{}

if (1==2)
x=1;y=2;z=3;
编译后

if (1==2)
{x=1};y=2;z=3; 
所以当1!=2时,y=2;z=3;仍执行。

 

2.加{}

if (1 == 2)
{ x=1;y=2;z=3;}
所以当1!=2时,都不执行。

 

【通俗理解】

   后面不加{}时,就近原则,只控制第一句

posted @ 2019-12-17 00:23  江湖艺人  阅读(3247)  评论(0编辑  收藏  举报