`

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时,都不执行。

 

【通俗理解】

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

.

分享到:
评论

相关推荐

    Intellij-idea-详细使用教程

    本教程将详细介绍IntelliJ IDEA的基本操作和高级特性,帮助开发者更高效地进行软件开发。 一、安装与启动 在开始使用IntelliJ IDEA之前,你需要下载并安装最新版本的软件。官网提供了Windows、Mac OS和Linux三种...

    javaif语句和switch语句.pdf

    在这里,如果不加大括号,`bytesAvailable = n;`可能被认为是在else子句内,但实际上它属于外层代码。为了避免这种误解,应始终为多行代码使用大括号。 嵌套if语句是if语句的一个扩展,一个if语句可以作为另一个if...

    修改版 Reflector v1.0.2011.0408

    5,改善if语句,只有一个语句时不换行,不加大括号,增加代码可读性。下图第一行 image 6,改善表达式圆括号。原来为了严禁,几乎每一个子表达式外面都套一层圆括号,如果一个条件表达式有多个子表达式组成,最后...

    带你玩转车载测试-CAPL入门篇三:CAPL基本语法

    当 if 中的语句不止一行时,需加大括号{}。 例如: if(a &gt; 3) a += 1; else a -= 1; 接下来,让我们讨论循环语句。CAPL 语言中的循环语句包括 for 循环语句、while 循环语句等。for 循环语句既可以用在确定的循环...

    Objective-C编程中语句和变量的一些编写规范建议

    8. **switch语句**:单行case可以不加大括号,但多行case必须使用大括号以避免意外的缩进问题。例如: ```objc switch (condition) { case 1: // … break; case 2: { // … // Multi-line example using ...

    groovy学习资料

    - **简洁性**:Groovy的语法比Java更加简洁,如方法调用可以不带括号,单行if语句可以不加大括号。 - **动态性**:Groovy是动态类型的,允许在运行时改变对象的属性和方法。 - **兼容性**:Groovy代码可以直接与...

    51单片机C语言编程基础及实例

    //是 KEY_OFF 接下,所示 P1.1 输出低,LED 灭 } //松开键后,都不给 LED 赋值,所以 LED 保持最后按键状态。 14. //同时按下时,LED 不断亮灭,各占一半时间,交替频率很快,由于人眼惯性,看上去为半亮态 15. } ...

    mysql+数据库存储过程

    - **维护成本**:随着业务的发展,存储过程的复杂度可能会增加,导致维护难度加大。 #### 六、项目实践示例 下面给出一个具体的存储过程实例: ```sql CREATE DEFINER=`root`@`%` PROCEDURE `userSession_Select`...

Global site tag (gtag.js) - Google Analytics