Number.NEGATIVE_INFINITY

The Number.NEGATIVE_INFINITY property represents the negative Infinity value.

Property attributes of Number.NEGATIVE_INFINITY
Writable no
Enumerable no
Configurable no

Description

The value of Number.NEGATIVE_INFINITY is the same as the negative value of the global object's Infinity property.

This value behaves slightly differently than mathematical infinity:

  • Any positive value, including POSITIVE_INFINITY, multiplied by NEGATIVE_INFINITY is NEGATIVE_INFINITY.
  • Any negative value, including NEGATIVE_INFINITY, multiplied by NEGATIVE_INFINITY is POSITIVE_INFINITY.
  • Any positive value divided by NEGATIVE_INFINITY is negative zero.
  • Any negative value divided by NEGATIVE_INFINITY is positive zero.
  • Zero multiplied by NEGATIVE_INFINITY is NaN.
  • NaN multiplied by NEGATIVE_INFINITY is NaN.
  • NEGATIVE_INFINITY, divided by any negative value except NEGATIVE_INFINITY, is POSITIVE_INFINITY.
  • NEGATIVE_INFINITY, divided by any positive value except POSITIVE_INFINITY, is NEGATIVE_INFINITY.
  • NEGATIVE_INFINITY, divided by either NEGATIVE_INFINITY or POSITIVE_INFINITY, is NaN.

You might use the Number.NEGATIVE_INFINITY property to indicate an error condition that returns a finite number in case of success. Note, however, that isFinite would be more appropriate in such a case.

Because NEGATIVE_INFINITY is a static property of Number, you always use it as Number.NEGATIVE_INFINITY, rather than as a property of a Number object you created.

Examples

Using NEGATIVE_INFINITY

In the following example, the variable smallNumber is assigned a value that is smaller than the minimum value. When the if statement executes, smallNumber has the value -Infinity, so smallNumber is set to a more manageable value before continuing.

var smallNumber = (-Number.MAX_VALUE) * 2;

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

Specifications

Browser compatibility

BCD tables only load in the browser

See also