运算符
逻辑运算符 && || !
-
&&
- 从左向右寻找转布尔为false的值,找到返回这个值,找不到返回最后一个值。
- 注意:返回的结果不一定是true或false
-
||
- 从左向右寻找转布尔为true的值,找到返回这个值,找不到返回最后一个值。
- 注意:返回的结果不一定是true或false
-
!
- 一个!可对数据取反
- 两个!求数据布尔值
- 注意:返回值不是true就是false
-
转换布尔为false的数据有哪些?
- 0、undefined、null、false、’’、NaN
- 除此之外的数据转换布尔都为true
相等运算符 == ===
-
==
- 先对数据类型进行转换,数据类型一致后再比较值
- NaN不等于任何值,包括自己
- null与undefined互等,但不等于其他任何值(尤其是0和false)
- 数字与布尔数据,和其他任何值比较,全部转换成数字再比较
- 对象与对象比较内存地址
- 对象与字符串,转字符串再比较
-
===
- 双重比较,先比较数据类型,再比较值
-
三元运算符 ? :
- 先计算?号前面表达式的结果
- 结果布尔为true返回:号前面表达式的运行结果
- 结果布尔为false返回:号后面表达式的运行结果