zoukankan      html  css  js  c++  java
  • JS逻辑运算操作

    非!

     如果一个操作数是一个对象,返回false;

      如果一个操作数是一个空字符串,返回true;

      如果一个操作数是一个非空字符串,返回false;

      如果一个操作数是一个数值0,返回true;

      如果一个操作数是任意的非零字符,返回false;

      如果一个操作数是null,返回true;

      如果一个操作数是NaN,返回true;

      如果一个操作数是undefined,返回true;

      隐式转换:‘’ ,0,undefined,NaN,false,null默认转化为false   !时变为true

    与&&

      (1)对于布尔值,逻辑与是非常简单的,只要有一个false,就返回false;

      (2)对于不是布尔值的情况则:

              如果第一个操作数是对象,则返回第二个数

              如果第二个操作数是对象,则只有在第一个操作数的求值结果为true的情况下才会返回该对象;

              如果第两个操作数都是对象,则返回第二个数操作数

              如果有一个操作数是null,则返回null

              如果有一个操作数是NaN,则返回第NaN

              如果第一个操作数是undefined,则返回undefined

    或 ||

      (1)对于布尔值,逻辑或是非常简单的,只要有一个true,就返回true;

      (2)对于不是布尔值的情况则:

                     如果第一个操作数是对象,则返第一个操作数

                     如果第一个操作数的求值结果为false,则返回第二个操作数

                     如果两个操作数都是对象,则返回第一个操作数

                     如果两个操作数是null,则返回null

                     如果两个操作数是NaN,则返回NaN

                     如果两个操作数是undefined,则返回undefined 

  • 相关阅读:
    Item 16: 让const成员函数做到线程安全
    学习张鑫旭大神元素抛物线运动插件
    js根据浏览器对css3移动的支持,选择元素移动方式
    如何在图片加载完成前获取到图片宽高
    JavaScript和SVG实现点击连线
    多层级叠加问题
    闭包应用
    展示触摸屏网页打包成桌面应用(nw.js)
    获取鼠标坐标
    常用文档
  • 原文地址:https://www.cnblogs.com/lcddjm/p/5758279.html
Copyright © 2011-2022 走看看