zoukankan      html  css  js  c++  java
  • 关于if省略{}时的一些问题

    在if语句中有这样的情况当条件成立时执行语句只有一句的时候我们通常可以省略花括号

    var a = 0;
    if(a == 0)a++;

    这样的情况显然是可以的但是有些情况我们需要特别注意(当if/else语句中嵌套if语句时,必须确保else语句匹配正确的if语句)例如

        var i = j = 1,
            k = 2;
        if(i==j)
            if(j==k)
                console.log("i 等于 k")
        else
            console.log("i 不等于 j")

    结果

    这个时候的else匹配不是我们想要的匹配外层的在javascript解析器中它被解析成

     if(i ==j){
            if(j==k){
                console.log("i 等于 k")
            }
            else{
                console.log("i 不等于 j")
            }
        }

    然而我们想要的却是

    if(i ==j){
            if(j==k){
                console.log("i 等于 k")
            }
        }
        else{
            console.log("i 不等于 j")
        }

    所以平时写代码为了可读性更强,更易理解,更方便维护应当使用花括号

  • 相关阅读:
    c#委托与事件
    c#垃圾回收与资源管理
    c#接口、抽象类
    c#集合类、ArrayList、queue
    c#位运算
    c#索引器
    c#使用属性封装
    c#继承
    c#数组参数
    Lambda表达式
  • 原文地址:https://www.cnblogs.com/willamq/p/9554024.html
Copyright © 2011-2022 走看看