The Number.POSITIVE_INFINITY
static data property represents the positive Infinity value.
Value
The same as the value of the global Infinity property.
Description
The Number.POSITIVE_INFINITY
value behaves slightly differently than mathematical infinity:
- Any positive value, including
POSITIVE_INFINITY
, multiplied byPOSITIVE_INFINITY
isPOSITIVE_INFINITY
. - Any negative value, including NEGATIVE_INFINITY, multiplied by
POSITIVE_INFINITY
is NEGATIVE_INFINITY. - Any positive number divided by
POSITIVE_INFINITY
is positive zero (as defined in IEEE 754). - Any negative number divided by
POSITIVE_INFINITY
is negative zero (as defined in IEEE 754. - Zero multiplied by
POSITIVE_INFINITY
is NaN. - NaN multiplied by
POSITIVE_INFINITY
is NaN. POSITIVE_INFINITY
, divided by any negative value except NEGATIVE_INFINITY, is NEGATIVE_INFINITY.POSITIVE_INFINITY
, divided by any positive value exceptPOSITIVE_INFINITY
, isPOSITIVE_INFINITY
.POSITIVE_INFINITY
, divided by either NEGATIVE_INFINITY orPOSITIVE_INFINITY
, is NaN.Number.POSITIVE_INFINITY > x
is true for any number x that isn'tPOSITIVE_INFINITY
.
You might use the Number.POSITIVE_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 POSITIVE_INFINITY
is a static property of Number, you always use it as Number.POSITIVE_INFINITY
, rather than as a property of a number value.
Examples
Using POSITIVE_INFINITY
In the following example, the variable bigNumber
is assigned a value that is larger than the maximum value. When the if statement executes, bigNumber
has the value Infinity
, so bigNumber
is set to a more manageable value before continuing.
let bigNumber = Number.MAX_VALUE * 2;
if (bigNumber === Number.POSITIVE_INFINITY) {
bigNumber = returnFinite();
}