JavaScript语法-JavaScript逻辑操作符

Author:Helene

本文章采用 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议 进行许可。转载请注明来自Helene的博客


逻辑操作符

&&:与
||:或
!:非
&&与

只要有一个条件不成立,返回false

说明:

1、在有两个操作数的时候,如果第一个操作数隐式类型转换后为true,则返回第二个操作数,如果有多个前面都隐式类型转换后都为true,那么返回第最后一个操作数
2、如果第一个操作数隐式类型转换后为false,则返回第一个操作数
3、如果有一个操作数是null,则返回null
4、如果有一个操作数是NaN,则返回NaN
5、如果有一个操作数是undefined,则返回undefined
|| 或

只要有一个条件成立,返回true

说明:在有一个操作数不是布尔值的情况,逻辑或就不一定返回布尔值,此时它遵循以下规则:

1、如果第一个操作数隐式类型转换后为true,则返回第一个操作数
2、如果第一个操作数隐式类型转换后为false,则返回第二个操作数
3、如果两个操作数是null,则返回null
4、如果两个操作数是NaN,则返回NaN
5、如果两个操作数是undefined,则返回undefined
!非

说明:

1、无论操作数是什么数据类型,逻辑非都会返回一个布尔值
2、!!同时使用两个逻辑非操作符时:
    第一个逻辑非操作符基于无论什么操作数返回一个布尔值
    第二个逻辑非则对该布尔值求反