对于大于或等于的简单构造是什么,其中仅基于布尔参数应用相等的部分。

一种简单的方法(Type(Java)Script):

function isGreaterThanOrEqual(a: number, b:number, allowEqual: boolean = false): boolean {
  if(allowEqual){
    return a >= b;
  } else {
    return a > b
  }
}


我有一个(旋转的)矩形碰撞检测方法,其中进行了许多比较。有时我想包含彼此接触的矩形,有时却不包含它们(它们必须“确实”重叠),这就是为什么此可选的allowEqual参数派上用场的原因。

我想避免在此方法的许多地方使用if语句,而希望使用一种优雅的单线格式。

可以单线方式完成此操作吗?

最佳答案

您可以通过返回较大检查的值或检查allowEqual和身份检查的方式来使用分阶段方法。

return a > b || allowEqual && a === b;

关于javascript - 大于或等于(基于 bool 条件),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50409257/

10-11 03:50