JavaScript 数字比较函数 - 比较与减法
JavaScript numeric compare function - comparison vs subtraction
当您尝试在 Java 中使用减法比较数字时,可能会出现整数溢出。参见 Q: Java Integer compareTo() - why use comparison vs. subtraction?
但是,不同于Java,JavaScript handles overflows and underflows。
问题是 compareNumeric()
的以下实现在 Java 脚本中是否正常工作?
// compareNumeric() one-liner
function compareNumeric(a, b) {
return a - b;
}
编辑。 compareNumeric
函数应该 return
- 当 a < b 时为负值;
- 0 当 a = b;
- 当 a > b 时为正值。
a
和 b
是数字。
Does the following implementation of compareNumeric() work as expected in JavaScript?
是的。正如您已经知道的那样,javascript 中没有整数上溢或下溢(因为所有数值都是浮点数)。如果您的值变得太大或太小,您最终会得到 Infinity
或 -Infinity
,分别为正数和负数。
当您尝试在 Java 中使用减法比较数字时,可能会出现整数溢出。参见 Q: Java Integer compareTo() - why use comparison vs. subtraction?
但是,不同于Java,JavaScript handles overflows and underflows。
问题是 compareNumeric()
的以下实现在 Java 脚本中是否正常工作?
// compareNumeric() one-liner
function compareNumeric(a, b) {
return a - b;
}
编辑。 compareNumeric
函数应该 return
- 当 a < b 时为负值;
- 0 当 a = b;
- 当 a > b 时为正值。
a
和 b
是数字。
Does the following implementation of compareNumeric() work as expected in JavaScript?
是的。正如您已经知道的那样,javascript 中没有整数上溢或下溢(因为所有数值都是浮点数)。如果您的值变得太大或太小,您最终会得到 Infinity
或 -Infinity
,分别为正数和负数。