JavaScript 布尔操作符汇总

布尔操作符分为 逻辑非,逻辑或,以及逻辑与。
1逻辑非.
如果操作数为对象时结果为:false;
如果操作数为非空字符串时结果为:false;
如果操作数为任意非0数字(包括infinity)时结果为:false;
如果操作数为null,undefined,NaN时结果为:true;

值得注意的是如果将操作数取非两次就和对这个值使用Boolean()一样

2.逻辑与.
如果第一个操作数是对象就返回第二个操作数。
如果第二个操作数是对象且第一个操作数为true就返回这个对象。
如果两个操作数都是对象就返回第二个对象。
如果有一个操作数为null,undefined,NaN 就返回他们本身
eg:
console.log(’’&&‘blue’);
console.log(‘blue’&&’’);
这两句句代码的返回值为空(0同理)
console.log(‘blue’&&111);
console.log(111&&‘blue’);
这两句代码转换为boolean均为true 谁在后面结果是谁

3.逻辑或
如果第一个或两个操作数都是对象将返回第一个操作数
如果第一个操作数转换为boolean为false就返回第二个操作数
如果两个数都是null,undefined,NaN就返回他们本身

最后,逻辑与和逻辑或这两个运算符都是短路运算符 如果第一个操作数可以决定结果后面的不会执行。

console.log(1||2);
console.log(1&&2);

这两行代码执行的结果分别是1和2。

猜你喜欢

转载自blog.csdn.net/qaqLjj/article/details/84371610
今日推荐