zoukankan      html  css  js  c++  java
  • js中的逻辑与和逻辑或随笔

    逻辑与:&&,都真才真

    逻辑或:||,一真都真

    逻辑运算两侧不都是布尔值时,会隐式转换为布尔值
    转换规则:
    转换为true:非0数字(包含infinity)、非空字符串
    转换为false:0、空字符串、undefined、NaN、null


    短路语法
    逻辑与 a&&b:类似于串联电路,如果a为真,流通到b,值为b;如果a为假,流不到b,值为a;

    逻辑或 a || b:类似于并联电路,如果a为真,结果就为a;如果a为假,通过b,结果为b;

    练习:

     1 //逻辑运算顺序:非、与、或
     2 // 练习1:false || !false && false || true;
     3 var num1 = false || !false && false || true;
     4 /*
     5 false || !false && false || true
     6 = false || true && false || true
     7 = false || false || true
     8 = false || true
     9 = true
    10 */
    11 //非布尔值在参与逻辑运算时会隐式转换为布尔值
    12 //转换为true:非0数字、非空字符串
    13 //转换为false:0、空字符串、undefned、null、NaN
    14 // 练习2 4 && "hello" || !false || !true && null
    15 var num2 = 4 && "hello" || !false || !true && null;
    16 /*
    17 4 && "hello" || !false || !true && null
    18 = 4 && "hello" || true || false && null
    19 //参照逻辑与串联短路图,a && b,若a为真,值为b;若a为假,值为a;此处4隐式转换为true,值是"hello",
    20 = "hello" || true || false    
    21 //参照逻辑或并联短路图,a || b,若a为真,值为a;若a为假,值为b
    22 = "hello" || false
    23 = "hello"
    24 */
    25 console.log(num1);    //输出 true
    26 console.log(num2);    //输出hello
  • 相关阅读:
    APP测试中 iOS 和 Android有哪些区别呢
    软件测试的标准工作流程
    selenium在元素定位的时候,明明定位到元素却始终不可见
    接口测试要点
    测试用例的组成部分
    APP测试的全面性
    安卓出现ARN的原因
    测试的多个方面
    α测试和β测试
    接口自动化测试用例设计方法
  • 原文地址:https://www.cnblogs.com/zjp-/p/9004231.html
Copyright © 2011-2022 走看看