zoukankan      html  css  js  c++  java
  • js中“||”和“&&”运算符的另类用法

    在js中“||”和“&&”不只是在if语句中使用,他们还有另一种使用方法。

    比如:

       1:  console.log(false||true);//true
       2:  console.log(false && true);//false

    为什么会这样呢?原来系统会先判断“||”前面表达式的布尔值,是真是假。如果为真,直接返回前面的。如果为假,直接返回后面的(不会判断后面的是什么类型)

    而“&&”则恰好相反。也可以这么说“||”遇到true返回,如果没有true则返回最后一个,“&&”遇到false返回,如果没有false则返回最后一个。

    请看下面的:

       1:  var test1=true || false || true;;
       2:  console.log(test1);//true
       3:  var test2=true && false && true;
       4:  console.log(test2);//false
     
    还有一点:如果“||”和“&&”混用的话“&&”的优先级高于“||”:
     
       1:  var test1=false|| false && true;
       2:  console.log(test1);//false

    最后补充一点只要能转化为布尔值的都可以用上面的方法,比如null、0、1等等。

  • 相关阅读:
    电脑出现的问题以及解决方法
    [2] 立方体(Box)图形的生成算法
    [1] 平面(Plane)图形的生成算法
    [0] 各类图形的数据大小获得
    3D几何图形的生成算法
    3D几何图形生成的DEMO
    花了两天时间为我的引擎实现了性能分析的界面显示
    游戏:贪吃虫(GreedyMaggot)
    相声段子:求爱总动员
    三维体数据分割算法
  • 原文地址:https://www.cnblogs.com/zsplove/p/3650443.html
Copyright © 2011-2022 走看看