如何在 JavaScript IF 语句中使用 OR 条件?

IT技术 javascript boolean-expression
2021-03-17 21:00:38

我知道在 JavaScript 中你可以这样写:

if (A && B) { do something }

但是我如何实现一个 OR,例如:

if (A OR B) { do something }
6个回答

只需使用逻辑“或”运算符,即||

if (A || B)
请参阅逻辑运算符
2021-05-01 21:00:38
你有一些官方文档的链接吗?
2021-05-20 21:00:38

值得注意的是,如果 BOTHare||也将返回trueABtrue

在 JavaScript 中,如果您正在寻找Aor B但不是 both,则需要执行类似于以下操作的操作:

if( (A && !B) || (B && !A) ) { ... }
@Murplyx:在大多数情况下是的,但 32 位范围之外的数字可能会失败。(Math.pow(2,32)-1) ^ 0; // -1 (success)...Math.pow(2,32) ^ 0; // 0 (failure)
2021-04-20 21:00:38
@squint 为什么真或假会在 32 位范围之外,因此它们只有 0 或 1,顺便说一句,如果您比较数字,只需使用 !!n 来获取布尔值。
2021-04-25 21:00:38
if (A ? !B : B) {...将是一个较短的替代品,没有 32 位限制。或许if (!A != !B) {...
2021-05-05 21:00:38
第一个短语不应该是“值得注意的是,如果 var A 或 var B 为真, || 将返回真”??这意味着您提到的是 (true | true) = true。这是常见的和理解的。
2021-05-06 21:00:38
(A && !B) || (B && !A)可以换成更流畅的 A ^ B
2021-05-10 21:00:38
if (A || B) { do something }

|| 是 or 运算符。

if(A || B){ do something }