逻辑或 (||)、逻辑与(&&)、逻辑非(!)
- 逻辑非(!)操作符遵循下列规则:
“”、0、NaN、null、undefined转换成布尔值是false,其余转换成布尔值为true。
逻辑非把前面的值取反即可;
!取反操作;因为js有数据,数据有真假,所以可以进行转化取反;
!!两个逻辑非操作符,就是直接将数据转换成布尔值;
2.逻辑或(||):
逻辑或遵循的原则为:
a)多个数据有一个转化成布尔为真,则整条件就成立
d)如果两个操作数都是对象则返回第一个操作数;
e)如果两个操作数都为null,则返回null;
f)如果两个操作数都为NaN,则返回NaN;
g)如果两个操作数都为undefined,则返回undefined;
console.log(0 || 1); // 有一个成立则成立
- 逻辑与操作符(&&)遵循以下原则:
a)多个数据都为真,则条件结果为真,其中有一个为假,条件结果即为假;
b)如果第一操作数为对象,则返回第二个操作数;
c)如果第二个为对象,则只有第一个则返回第二个操作数为求职结果为true时,返回该对象;
d)如果两个操作数都是对象则返回第二个操作数;
e)如果有一个操作数为null,则返回null;
f)如果有一个操作数为NaN,则返回NaN;
g)如果有一个操作数为undefined,则返回undefined;
// 逻辑判断
console.log(2 && 1); // 两个都成立条件成立