zoukankan      html  css  js  c++  java
  • 关于javascript中的操作符&&和||的最终返回值

    以前一直误以为操作符逻辑与(&&)和逻辑或(||)的最终返回结果只有true或者false两种,今天在调试程序的时候才醒悟原来不是这样的。

    首先这两个操作符都有两个操作数,都可以应用于任何类型的操作数,而不仅仅是布尔值。

    那么哪些值会被当做假呢?

      除false,null,undefined,空字符串" ",数字0,数字NaN这些会被当做假,其他所有值都被当做真(包括true,"false",以及所有的对象,可以使用Boolean来测试一个值到底被转换成了什么,例如Boolean('false') 返回的应该是true 

    ① 逻辑与(&&)遵循的规则

    首先计算左边表达式的值,如果为false或者可以转换为false(值被当做假),那么返回左边表达式的值,否则将返回右边表达式的值作为&&的运算结果。

    ② 逻辑或(||)遵循的规则

    首先计算左边表达式的值,如果不为false或者不可以转换为false(值为真),那么返回左边表达式的值,否则返回右边表达式的值作为||的运算结果

     
  • 相关阅读:
    数据库连接池实现
    Linux array_vpnc
    MVC小结
    Linux和Windows下 classpath 的差异
    无法删除DLL文件解决方法(转)
    电信工程管理方法
    常用设计思想
    MAX262使用说明
    基于FPGA的FIR滤波器(草稿)
    数字存储示波器(草稿)
  • 原文地址:https://www.cnblogs.com/yangfei/p/3112720.html
Copyright © 2011-2022 走看看