与(and)&&
/与(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。
随机推荐
- asp.net 微信企业号办公系统-流程设计--流转条件设置(路由)
当一个步骤后面有多个步骤时,可以设置为根据设置条件系统自动判断该流向哪些步骤,也叫路由. 工作流没有单独的路由步骤来设置条件,流程条件通过双击连线弹出条件设置框来设置. 1.sql条件 即通过sql条 ...
- JAVA发送邮件工具类
import java.util.Date;import java.util.Properties; import javax.mail.BodyPart;import javax.mail.Mess ...
- IP地址在数据库里面的存储方式
大多数公司的表结构都需要经过DBA进行审核,有时候你会看到存储IP地址采用varchar(15),这种方式都是传统的做法,这种方法需要占用15个字节,那么有更省空间的做法么?肯定是有的,那就是用int ...
- Why Consumer Hardware Start-ups Fail
今年看到一篇文章还是很受启发. If you have the guts to start selling what you believe in, customers who share your ...
- 重命名Administrator账号
(Get-WmiObject -class Win32_UserAccount | where {$_.SID -Like 'S-1-5-*-500'}).Rename("Ultraman& ...
- NOJ 1651 Red packet(二分)
[1651] Red packet 时间限制: 1000 ms 内存限制: 65535 K 问题描述 New Year is coming! Our big boss Wine93 will dist ...
- POI设置边框
在做一个电子表格时,边框的设置有时是必不可少的.这一节就来介绍边框,设置时,可以指定边框的位置,边框的种类,边框的顔色. 首先是边框的位置和种类.对单元格设置边框时,有上下左右位置之分,所以POI也准 ...
- Excel中如何在两个工作表中查找重复数据
有时我们可能会在两种工作表中查找重复记录,当数据记录很多时,就必须通过简单的方法来实现.下面小编就与大家一起分享一下查看重复记录数据的方法,希望对大家有所帮助. 方法/步骤 为了讲解的需要,小编特 ...
- 20个C语言中常用宏定义总结
01: 防止一个头文件被重复包含 #ifndef COMDEF_H#define COMDEF_H//头文件内容#endif 02: 重新定义一些类型防止由于各种平台和编译器的不同,而产生的类型字节数 ...
- 当多个工程互相引用时,若有serverlet工程,提示java.lang.NoClassDefFoundError错误
serverlet工程和其他的工程引用有所不同,直接在buildpath中添加引用的工程会报NoClassDefFoundError错误错误, 需要在properties-depoyment asse ...