JavaScript 中逻辑运算符小结
1、ECMAScript 对 其他类型转化为Boolean值的操作:
Undefined -----------false
Null -----------false
Bollean -------------不进行转换
Stirng --------------为空 false 不为空 true
Number -------------+0 -0 为false 其他为true
Object --------------引用类型为true (注意null为原始类型)
2、逻辑运算符
(1)、逻辑AND(&&)
如果&& 用于逻辑运算 那么它就是并的意思,只有当条件全部满足的时候,才返回为true ,否则,返回为false。
eg:
if(2&&3&&72) --true
if(2&&3&&0) ---false
如果&&用于计算某一个逻辑表达式的值时,只有当表达式中正在读取的元素为真时才进行读取下一个元素,并返回最后读取的一个元素的值,读到的元素为假则停止读取并返回值
eg:
var a = 2&& 3 ---> a = 3;
var a = 2&& 0 --->a = 0;
var a = 0&& 2-----> a=0;
var a = 0&& 2&&0 --->a=0;
(2)、逻辑OR(||)
如果||用于逻辑运算 那么它就是或的意思,条件至少一个满足时,才返回为true ,否则,返回为false。
eg:
if(2||3||72) --true
if(2||3||0) ---true
if(0||0||0) ---false
(2)、逻辑NOT(!)
与逻辑 OR 和逻辑 AND 运算符不同,逻辑 NOT 运算符返回的一定是 Boolean 值。