zoukankan      html  css  js  c++  java
  • 短路表达式

    // ||短路表达式
    var foo = a || b;
    // 相当于
    if(a){
        foo = a;
    }else{
        foo = b;
    }
     
    // &&短路表达式
    var bar = a && b;
    // 相当于
    if(a){
        bar = b;
    }else{
        bar = a;
    }

    天天在看到,但不一定真的理解

    这里需要提出一些值得注意的点:

    1、在 Javascript 的逻辑运算中,0、""、null、false、undefined、NaN 都会判定为 false ,而其他都为 true ;

    2、因为 Javascript 的内置弱类型域 (weak-typing domain),所以对严格的输入验证这一点不太在意,即便使用 && 或者 || 运算符的运算数不是布尔值,仍然可以将它看作布尔运算。

    if(foo){ ... }     //不够严谨
    if(!!foo){ ... }   //更为严谨,!!可将其他类型的值转换为boolean类型

    注重细节,JavaScript 既不弱也不低等,我们只是需要更努力一点工作以使我们的代码变得真正健壮。

  • 相关阅读:
    Nginx负载均衡
    MySQL主从复制
    笔记
    tomcat工作原理
    Nginx工作原理
    Loj#6183. 看无可看
    [BZOJ 2759] 一个动态树好题
    5255 -- 【FJOI2016】神秘数
    [NOI2015]寿司晚宴
    [CQOI2017]老C的键盘
  • 原文地址:https://www.cnblogs.com/lmaster/p/6525290.html
Copyright © 2011-2022 走看看