使用 Number.isFinite() 对比无穷大对比 Number.POSITIVE_INFINITY 检查数字是否有限
Using Number.isFinite() vs comparing to Infinity vs comparing to Number.POSITIVE_INFINITY to check if a number is finite
有多种方法可以检查数字是否有限。
使用Number.isFinite()
函数:
Number.isFinite(number)
与Infinity
相比:
Math.abs(number) !== Infinity
我在这里使用 Math.abs()
以防数字是 -Infinity
。
-
Math.abs(number) !== Number.POSITIVE_INFINITY
使用这三种方法有什么区别吗?我假设 Infinity
是只读的,如 ECMAScript 5 规范所述。
2 和 3 相同,因为 Number.POSITIVE_INFINITY === Infinity
。 1 和 2 将以不同方式处理 NaN
,请参阅 http://www.ecma-international.org/ecma-262/6.0/#sec-number.isfinite
有多种方法可以检查数字是否有限。
使用
Number.isFinite()
函数:Number.isFinite(number)
与
Infinity
相比:Math.abs(number) !== Infinity
我在这里使用
Math.abs()
以防数字是-Infinity
。-
Math.abs(number) !== Number.POSITIVE_INFINITY
使用这三种方法有什么区别吗?我假设 Infinity
是只读的,如 ECMAScript 5 规范所述。
2 和 3 相同,因为 Number.POSITIVE_INFINITY === Infinity
。 1 和 2 将以不同方式处理 NaN
,请参阅 http://www.ecma-international.org/ecma-262/6.0/#sec-number.isfinite