Number.NEGATIVE_INFINITY

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

Number.NEGATIVE_INFINITY 静态数据属性表示负无穷大值。

试一试

function checkNumber(smallNumber) {
  if (smallNumber === Number.NEGATIVE_INFINITY) {
    return "Process number as -Infinity";
  }
  return smallNumber;
}

console.log(checkNumber(-Number.MAX_VALUE));
// Expected output: -1.7976931348623157e+308

console.log(checkNumber(-Number.MAX_VALUE * 2));
// Expected output: "Process number as -Infinity"

与全局 Infinity 属性的负值相同。

Number.NEGATIVE_INFINITY 的属性属性
可写
可枚举
可配置

描述

Number.NEGATIVE_INFINITY 值在某些方面与数学无穷大略有不同

  • 任何正值,包括 POSITIVE_INFINITY,乘以 NEGATIVE_INFINITY 结果为 NEGATIVE_INFINITY
  • 任何负值,包括 NEGATIVE_INFINITY,乘以 NEGATIVE_INFINITY 结果为 POSITIVE_INFINITY
  • 任何正值除以 NEGATIVE_INFINITY 结果为 负零(根据 IEEE 754 定义)。
  • 任何负值除以 NEGATIVE_INFINITY 结果为 正零(根据 IEEE 754 定义)。
  • 零乘以 NEGATIVE_INFINITY 结果为 NaN
  • NaN 乘以 NEGATIVE_INFINITY 结果为 NaN
  • NEGATIVE_INFINITY 除以任何负值(除了 NEGATIVE_INFINITY 本身)结果为 POSITIVE_INFINITY
  • NEGATIVE_INFINITY 除以任何正值(除了 POSITIVE_INFINITY)结果为 NEGATIVE_INFINITY
  • NEGATIVE_INFINITY 除以 NEGATIVE_INFINITYPOSITIVE_INFINITY 结果为 NaN
  • 对于任何不等于 NEGATIVE_INFINITY 的数字 xx > Number.NEGATIVE_INFINITY 为真。

您可以使用 Number.NEGATIVE_INFINITY 属性来表示在成功时返回有限数字的错误情况。但请注意,在这种情况下,NaN 会更合适。

由于 NEGATIVE_INFINITYNumber 的静态属性,您始终将其作为 Number.NEGATIVE_INFINITY 来使用,而不是作为数字值的属性。

示例

使用 NEGATIVE_INFINITY

在下面的示例中,变量 smallNumber 被赋值为一个小于最小值的值。当 if 语句执行时,smallNumber 的值为 -Infinity,因此 smallNumber 被设置为一个更易于处理的值,然后继续执行。

js
let smallNumber = -Number.MAX_VALUE * 2;

if (smallNumber === Number.NEGATIVE_INFINITY) {
  smallNumber = returnFinite();
}

规范

规范
ECMAScript® 2026 语言规范
# sec-number.negative_infinity

浏览器兼容性

另见