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中||和&&的特性帮我们精简了代码的同时,也带来了代码可读性的降低。这就需要我们自己来权衡了。
  

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值