在JavaScript最大值中,一个数字可以来自Number.MAX_VALUE
属性。如果我安慰,
console.log(isFinite(Number.MAX_VALUE)); // true
预计会变为现实。但我在下面的陈述中期待错误,因为我将最大值加1。
console.log(isFinite(Number.MAX_VALUE + 1));
但它正在回归真实。是什么原因?
再添一个案例。跟随行输出false,如预期的那样。
console.log(isFinite(Number.MAX_VALUE * Number.MAX_VALUE));
此stackoverflow question中提到的问题解释了最大整数值。但我需要知道超过最大浮点数的数字是如何工作的。
答案 0 :(得分:0)
Number.MAX_VALUE + 1
不是Infinity
。
您应该阅读this question和this answer以获得更好的解释。
至于isFinite
,非常简单:
如果参数为NaN,正无穷大或负无穷大,则此方法返回false;否则,它返回true。
来自MDN。另见:Number.isFinite
。