美文网首页
js 逻辑运算符 短路运算符 && || !! 的应用

js 逻辑运算符 短路运算符 && || !! 的应用

作者: alokka | 来源:发表于2020-06-09 15:31 被阅读0次

首先简单说下逻辑运算符 && ||

&& 例:a && b
  1. 只要 && 前面是 false,无论 && 后面是true还是 false,结果都将返 && 前面的值;
  2. 只要 && 前面是 true,无论 && 后面是true还是 false,结果都将返 && 后面的值;
|| 例:a || b
  1. 只要 || 前面为 false,无论 || 后面是true还是 false,结果都返回 || 后面的值。
  2. 只要 || 前面为 true,无论 || 后面是true还是 false,结果都返回 || 前面的值。

————————————————————————————————————————————————

    var flag = true;
    if(flag) {
    console.log(1);
    }   
    
    // 等于
    
    var flag = true;
    console.log(flag && 1); // 前面的值为true(存在)则返回后面的值 或者执行函数
    var flag = false;
    if(!flag) {
    console.log(1);
    }
    
    // 等于
    
    var flag = false;
    console.log(flag || 1);// 前面的值为false(不存在)则返回后面的值 或者执行函数
    // 逻辑运算符用法进阶
    var a = 5;
    var b;

    if(a > 10) {
        b = 10;
    }else {
        b = 5; 
    }
    console.log(b);
    
    // 等于
        
    var a = 5;
    var b;
    b = a > 10 && 10 || 5;
    console.log(b)

说下逻辑运算符 !!

首先在复习下 js 中布尔值为false的六种情况
1、undefined(未定义,找不到值时出现)
2、null(代表空值)
3、false(布尔值的false,字符串"false"布尔值为true)
4、0(数字0,字符串"0"布尔值为true)
5、NaN(无法计算结果时出现,表示"非数值";但是typeof NaN==="number")
6、""(双引号)或''(单引号) (空字符串,中间有空格时也是true)
注意空数组空对象,负值转的布尔值时都为true

"!!"操作符是判断变量是否真正为真(非null/undefined/false/NaN/""、''等)的很简明的实现方式,省去了大量的&&运算,如果用&&来实现求真逻辑,代码表现如下:
    if( obj!==null &&obj!==undefined && obj!==NaN && obj!=="" && obj!==false){
           // 
    }
用 !!
    if( !!obj ){
            // 
    }

相关文章

  • 运算符,表达式与语句

    1 运算符 2 一元运算符 短路逻辑运算符的使用 自增++和自减--

  • JavaScript进阶之:四、关系运算符与逻辑运算符

    关系运算符等于(=)大于(>)小于(<)不等于 (!=)大于等于(>=)小于等于(<=) 逻辑运算符(短路)逻辑与...

  • 【003期】JavaSE面试题(三):JavaSE语法(1)

    一、& 和 && 的区别? &运算符有两种用法: 按位与 逻辑与 &&运算符是短路与运算。逻辑与跟短路与的差别是很...

  • JavaScript 02 (运算符和选择结构)

    js的关系运算符,js的逻辑运算符,js的赋值运算符,js的运算符的优先级问题,js的自增和自减,js的选择结构 ...

  • Java基础8 -- 运算符

    算数运算符 常见操作 赋值运算符 比较运算符 逻辑运算符 规律小结:短路与&&:参与运算的两边数据,有false,...

  • js 逻辑运算符 短路运算符 && || !! 的应用

    首先简单说下逻辑运算符 && || && 例:a && b 只要 && 前面是 false,无论 && 后面是tr...

  • JavaScript逻辑运算符

    逻辑运算符 前面我们学习了JS的算术运算符和比较运算符,本篇文章我们继续学习JS的逻辑运算符,在编程语言里,比较和...

  • &&,||

    长路和短路 长路将逻辑运算符两侧运算执行完后执行逻辑运算;短路先执行逻辑运算符左侧部分,符合,就不再执行右侧部分。...

  • 15_逻辑运算符分析

    关键词:&&、||、! 1. 初探逻辑运算符 输出结果: 2. 逻辑运算符分析——程序中的短路 ||从左向右开始...

  • 无标题文章

    逻辑运算符(短路运算符) 逻辑非 符号:! 操作符: !表达式 结果:布尔类型的值,要么是true要么是false...

网友评论

      本文标题:js 逻辑运算符 短路运算符 && || !! 的应用

      本文链接:https://www.haomeiwen.com/subject/yvostktx.html