【发布时间】:2021-10-04 23:23:34
【问题描述】:
有没有更短的方法来计算这个布尔表达式?
a < b < c || b < c < a || c < a < b
在 JavaScript 中是:
a < b && b < c || b < c && c < a || c < a && a < b
是否有一些有用的数学或布尔代数技巧可以让这变得不那么麻烦?
a、b 和 c 都是数字。在我的特定用例中,它们保证是不同的。
(其他上下文,在回复this question的过程中出现)
【问题讨论】:
-
我只需要
isAscending(a, b, c) || isAscending(b, c, a) || isAscending(c, a, b)whereisAscending = (a, b, c) => a < b && b < c。 -
我只喝了两杯咖啡,如果这是愚蠢的,请原谅我,但在什么情况下这不是是真的?也许用这些来测试会更好?
-
@Martin 如果 a = b = c :p
-
@Martin
a = 3, b = 2, c = 1将是错误的。 -
添加了更多细节。 @Martin:不。这两种情况的可能性相同。
标签: javascript comparison operators boolean-expression boolean-algebra