与(and)&&

时间:2021-12-05 05:21:58

/与(and)&&

var box = (5>3)&&(4>3);
alert(box); //true

如果脸变的操作数有一个操作数不是boolean值得情况下,于运算就不一定返回布尔值。遵循的规则如下:

a.第一个操作数是对象,则返回第二操作数;

var age = {}&&(4>3);
alert(age);//true

b.第二个操作数是对象,则第一个操作数返回true,才返回第二个操作数,否则返回false;

var box = (4>3)&&{};
alert(box);//[object object]
var age = (3>4)&&{};
alert(age);//falsealert(typeof age);//boolean
alert(typeof box);//object

c.有一个操作数是null,则返回null;

var box = null && (3>4);
var age = (3>4) && null;
alert(age);//flase
alert(box);//null

d.有一个操作时undefined,则返回undefined;

var box = undefined && (3>4);
var age = (3>4) && undefined;
alert(age);//flase
alert(box);//undefinedvar hight = true && height;alert(hight);//undefined

e.如果第一个为false,则不执行第二个,直接返回false

var box = false && (3>4);
var age = false && undefined;
alert(age);//flase
alert(box);//undefined

f. 第一个为单独number 或 string,执行第二,否则false

总结:看似有六条规定,实质就两条

1.第一个为false,不用执行第二个,直接返回false

2.第一个为true(包括Number、String、对象)或(null、undefined)。

  前者返回第二操作数;后者直接返回null、undefined。

随机推荐

  1. Oracle EBS - Form DEV Env

    1. 创建文件夹resource与forms, 以便存放pll与forms(主要用到APSTAND.fmb, APPSTAND.fmb, TEMPLATE.fmb)文件; 2. 修改注册表 HKEY_ ...

  2. js 同for一样效果 (延迟)每秒循环一次 追加

    <script type="text/javascript"> var j = 1;        var timeID = null;        function ...

  3. JSP与Servelt的区别

    相同点: 两者都是服务端的技术,而JSP本质上就是Servelt: 都可以处理来自客户端的请求,都可以对请求作出响应: 都可以生成HTML页面返回. 不同点: 在实际开发中,对JSP编程成响应的HTM ...

  4. 关于转换大写中文金额-新学的java函数整理

    toCharArray public char[] toCharArray() 将此字符串转换为一个新的字符数组. 返回: 一个新分配的字符数组,它的长度是此字符串的长度,而且内容被初始化为包含此字符 ...

  5. Python判断是否是数字(无法判断浮点数)&lpar;已解决&rpar;

    s为字符串s.isalnum() 所有字符都是数字或者字母s.isalpha() 所有字符都是字母s.isdigit() 所有字符都是数字s.islower() 所有字符都是小写s.isupper() ...

  6. 移动端和PC端通用的三级导航菜单栏

    免责声明: 本博客发布的所有信息资料都将尽可能注明出处.作者及日期,本人无意侵犯他人相关权益,如无意中侵犯了哪个媒体或个人的权益或知识产权,请留言或来信告之,本人将立即给予删除. Demo下载地址:h ...

  7. 10个你可能不知道的JavaScript小技巧

    1.变量转换 看起来很简单,但据我所看到的,使用构造函数,像Array()或者Number()来进行变量转换是常用的做法.始终使用原始数据类型(有时也称为字面量)来转换变量,这种没有任何额外的影响的做 ...

  8. DockerDesktop简单安装和使用

    一.在windows10下,安装DockerDesktop: 1.检查windows版本为企业版或专业版,并开启Hyper-v系统设置:电脑的控制面板->程序->启用或关闭Windows功 ...

  9. 【Lua】LuaForWindows&lowbar;v5&period;1&period;4-46安装失败解决方案

    下个补丁vcredist_x86.exe 可以到下面连接下载: https://download.csdn.net/download/tvcctv27tv/10344318

  10. 二步实现 远程连接 阿里云SqlServer 2012 数据库服务器

    前言:在使用 阿里云 上的一些产品时,遇到不少坑. 安装IIS 时,遇到 因买的配置过低,虚拟内存不足,而导致 IIS 总是安装失败: 现在 在上面安装了个 Sql Sever 2012,远程老是 不 ...