Javascript 逻辑运算符 与 短路计算
a&&b:
-
- a能转换为true,则计算并返回 b值
-
- a能转换为false,则返回a
-
- 所以为boolean环境时,a,b有一个为 false时,表达式值为false,只有两个都为true时 表达式值为才会为true
a||b
-
- a能转换为true时则返回 a
-
- a能转换为false时,则计算并返回b
-
- 所以为boolean环境时,a,b有一个为 true时,表达式值为true,只有两个都为false 时表达式值为才会为false
&&优先级高于||
表达式:null,0,""和undefined.都可以被转换成 false,对象会转换成true
短路计算
false && (anything) 短路计算的结果为false.
true || (anything) 短路计算的结果为 true.
参考文章:
MDN逻辑运算符