JavaScript逻辑运算符和字符串/数字
我无法理解逻辑运算符是如何工作的。我知道它是如何处理布尔值的,但是字符串或数字呢?
2 && 7
returns 7
"dog" && "cat"
returns "cat"
我明白了,如果数字或字符串不具有相同的值,则返回第二个值。但是为什么呢?我可以在"现实世界"中使用它吗?
解决方案
如果左侧为True,则计算为右侧。
如果左侧不为True,则计算为左侧。
false && true
计算为LHS。false
也是如此。
false && false
评估为LHS。false
也是如此。
true && false
评估为RHS手侧。false
也是如此。
true && true
评估为RHS。true
也是如此。
2 && 7
评估为RHS。也是7
(这是真的)。
0 && 7
评估为LHS。0
(这是假的)。
"cat" && "dog"
评估为RHS手侧。也是"dog"
(这是真的)。
||
工作方式相同,但如果为False,则返回lhs。
我可以在"现实世界"中使用它做什么?
您可以使用它的主要方法是计算和值是否都为真。这是运算符的点。
(它还用作速记if
测试,并用于确定将两个值中的哪一个赋值到某个位置)。
相关文章