如何实现多个或';用JavaScript工作? if(eggsAmount

如何实现多个或';用JavaScript工作? if(eggsAmount,javascript,Javascript,这是否意味着这两个条件中的哪一个是真的?是的,在只包含或|运算符的if语句中,它将简单地遍历每个条件,一旦找到一个是真的,则if语句解析为真,其余的不被检查,if块中的代码。包含多个或条件(|)的if语句在Javascript中具有布尔代数描述的相同行为:如果任何条件为真,则整个计算为True 在这里,您可以找到JS逻辑运算符说明 无论如何,表达式本身的计算不一定是布尔值。表情 if(eggsAmount < eggsMin || milkAmount < milkMin

这是否意味着这两个条件中的哪一个是真的?

是的,在只包含或
|
运算符的if语句中,它将简单地遍历每个条件,一旦找到一个是真的,则
if
语句解析为真,其余的不被检查,
if
块中的代码。

包含多个条件(
|
)的if语句在Javascript中具有布尔代数描述的相同行为:如果任何条件为真,则整个计算为
True

在这里,您可以找到JS逻辑运算符说明

无论如何,表达式本身的计算不一定是布尔值。表情

     if(eggsAmount < eggsMin || milkAmount < milkMin || flourAmount || FlourMin)
作为可评估为真的第一个条件进行评估(例如,如果
expr1
4+7
Res=11

如果没有一个条件的计算结果为真,则指定的值为最后一个条件中包含的值:
Res=exprN


(感谢Jared Farrish、Barmar和Teemu)

这通常是什么意思,是的。如果我说“给我买鸡蛋、牛奶或奶酪”,这些东西能满足我的要求吗?这意味着它们中的“任何”都是真的。我不确定你在这个上下文中所说的“哪一个”是什么意思。你可以用
|
作为“虚假的结合”,但如果(…),你只能知道至少有一个是真的还是假的。语义上,它的意思是“如果其中任何一个是真的,那么结果就是真的”但是,在实现方面,它将从左到右遍历术语列表,一旦找到一个真实的术语,它将按原样返回该术语的值。此外,您可能需要指定您认为这种情况是什么。一些较新的开发人员通常认为
milkAmount
的意思是“牛奶量小于milkMin,或小于flourAmount,或小于flourMin”。情况并非如此。如果您要查找的是
milkAmount
,则必须显式执行该操作。不过,不清楚您是否这样做。@IceMetalPunk Close-它返回最后一个计算表达式的结果。
1+1+3
返回
2
&&1+3
返回
4
。如果表达式本身是一个值,比如说
a=123…a | | b
,则可以按原样获得该值,因为它是条件表达式的结果。
Res = expr1 || expr2 || ... || exprN