JavaScript 数值范围

** ECMAScript ** 能够表示的最小数值保存在 ** Number.MIN_VALUE ** 中 —— 在大多数浏览器中,这个值是 ** 5e-324 **;能够表示的最大数值保存在 ** Number.MAX_VALUE ** 中 —— 在大多数浏览器中,这个值是 ** 1.7976931348623157e+308 **。如果某次计算的结果得到一个超出 ** JavaScript ** 数值范围的值,那么这个数值将被自动转换成特殊的 ** Infinity ** 值。具体来说,如果这个数值是负数,则会被转换成 ** -Infinity **(负无穷),如果这个数值是正数,则会被转换成 ** Infinity **(正无穷)。

如上所述,如果某次计算返回了正或负的 ** Infinity ** 值,那么该值将无法继续参与下一次的计算,因为 ** Infinity ** 不是能够参与计算的数值。要确定一个数值是不是有穷的(是不是位于最小和最大值之间),可以使用 ** isFinite() ** 函数。这个函数在参数位于最小与最大数值之间时会返回 true,如下面的例子所示:

var result = Number.MAX_VALUE + Number.MIN_VALUE;
alert(isFinite(result )); // false

尽管在计算中很少出现某些值超出表示范围的情况,但在执行极小或极大数值的计算时,检测监控这些值是可能的,也是必需的。

** Number.NEGATIVE_INFINITY ** 返回 ** -Infinity Number.POSITIVE_INFINITY ** 返回 ** Infinity **

你可能感兴趣的:(JavaScript 数值范围)