逻辑语句总是返回一个布尔值,true或false。 但是如何在OR逻辑运算中检索真实的语句呢?
答案 0 :(得分:0)
在JavaScript中,OR和AND运算符总是返回其中一个操作数。 OR运算符返回第一个伪操作数(并且不会在此之后计算任何操作数)或最后一个操作数(如果它们都是真实的)。 AND运算符类似地返回第一个truthy操作数或最后一个操作数,如果它们都是假的。
如果您希望结果为布尔值,则可以使用!
运算符返回true
表示假值,false
表示真值。
总结一下:
如果!!(a || b)
和/或true
是真实的,则{p> a
将返回b
,否则会false
。
如果a || b
是真实的,则{p> a
将返回a
,否则会返回b
。
修改强> 经过一些解释后,您正在寻找的是将OR的评估分开。
if (a === 56) {
// a is what you are looking for
} else if (b === 56) {
// b is what you are looking for
} else {
// neither a nor b are what you are looking for
}
上面的代码与您的代码执行完全相同的评估,但是您有一个代码分支,在第一个表达式为true时执行,另一个分支在第一个表达式为false且第二个表达式为true时执行。 / p>