JavaScript与或运算符 || && 妙用

 1.几乎所有语言中||和&&都遵循“短路”原理,如&&中第一个表达式为假就不会去处理第二个表达式,而||正好相反。

 2.在js逻辑运算中,0、""、null、false、undefined、NaN都会判为false,其他都为true 



    // 例:
    // aaa为10时,bbb为1;
    // aaa为20时,bbb为2;
    // aaa为30时,bbb为3;
    // aaa为40时,bbb为4;
    // 其他情况bbb为0。

    //利用if else : 
    var aaa
    var bbb
    if (aaa == 10) {
      bbb = 1;
    }
    else if (aaa == 20) {
      bbb = 2;
    }
    else if (aaa == 30) {
      bbb = 3;
    }
    else if (aaa == 40) {
      bbb = 4;
    }
    else {
      bbb = 0;
    }

    // 利用与或运算符特性:
    // 几乎所有语言中||和&&都遵循“短路”原理,如&&中第一个表达式为假就不会去处理第二个表达式,而||正好相反。
    var bbb = (aaa == 10 && 1) || (aaa == 20 && 2) || (aaa == 30 && 3) || (aaa == 40 && 4) || 0;

    // 利用对象属性
    var bbb = { '10': 1, '20': 2, '30': 3, '40': 4 }[aaa] || 0;

    // 在js逻辑运算中,0、""、null、false、undefined、NaN都会判为false,其他都为true
    // var abc = abc || "" 用于设置默认值
    // js中||和&&的特性帮我们精简了代码的同时,也带来了代码可读性的降低。这就需要我们自己来权衡了。
  

猜你喜欢

转载自blog.csdn.net/qq_41111677/article/details/108341168