The Number.NEGATIVE_INFINITY static data property represents the negative Infinity value.
Value
The same as the negative value of the global Infinity property.
Description
The Number.NEGATIVE_INFINITY value behaves slightly differently than mathematical infinity:
- Any positive value, including POSITIVE_INFINITY, multiplied by
NEGATIVE_INFINITYisNEGATIVE_INFINITY. - Any negative value, including
NEGATIVE_INFINITY, multiplied byNEGATIVE_INFINITYis POSITIVE_INFINITY. - Any positive value divided by
NEGATIVE_INFINITYis negative zero (as defined in IEEE 754). - Any negative value divided by
NEGATIVE_INFINITYis positive zero (as defined in IEEE 754). - Zero multiplied by
NEGATIVE_INFINITYis NaN. - NaN multiplied by
NEGATIVE_INFINITYis NaN. NEGATIVE_INFINITY, divided by any negative value exceptNEGATIVE_INFINITY, is POSITIVE_INFINITY.NEGATIVE_INFINITY, divided by any positive value except POSITIVE_INFINITY, isNEGATIVE_INFINITY.NEGATIVE_INFINITY, divided by eitherNEGATIVE_INFINITYor POSITIVE_INFINITY, is NaN.x > Number.NEGATIVE_INFINITYis true for any number x that isn'tNEGATIVE_INFINITY.
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 NaN 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 value.
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.
let smallNumber = -Number.MAX_VALUE * 2;
if (smallNumber === Number.NEGATIVE_INFINITY) {
smallNumber = returnFinite();
}