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

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

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

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

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

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

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

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

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

     
  • 相关阅读:
    将excel单元格中的内容,批量转化成批注
    装饰器的入门到精通
    自定义dict
    python2.7 + PyQt4安装
    一些好用的python模块
    人工智能-自然语言处理
    websocket-单群聊
    UA池和代理池
    scrapy框架持久化存储
    SQL Server 2012 酸爽的安装体验
  • 原文地址:https://www.cnblogs.com/yangfei/p/3112720.html
Copyright © 2011-2022 走看看