Number.NEGATIVE_INFINITY is a static data property on Number (same API as MDN Number.NEGATIVE_INFINITY). It is the negative Infinity value — the same as -Infinity and -Number.POSITIVE_INFINITY. You get it when math overflows past -MAX_VALUE, or from expressions like -1 / 0. This tutorial covers detection, IEEE-754 rules, five examples, and try-it labs.
01
Kind
Static property
02
Value
-Infinity
03
Same as
-Infinity
04
From
Overflow / −1÷0
05
Writable
No
06
Baseline
Everywhere
Fundamentals
Introduction
IEEE-754 floating point includes two signed infinities. Number.NEGATIVE_INFINITY is how JavaScript names negative infinity — smaller than every finite Number, including -Number.MAX_VALUE.
It is the same value as -Infinity ((Number.NEGATIVE_INFINITY === -Infinity), and also equals -Number.POSITIVE_INFINITY. Prefer the Number. form so infinity stays with other Number constants, and because it is non-writable.
💡
Static Property
Static properties belong to Number itself. Always write Number.NEGATIVE_INFINITY. There is no (5).NEGATIVE_INFINITY, and you do not call it like a function.
Negative infinity is not “a huge negative finite number” — it is a special IEEE-754 value. Once a result becomes -Infinity, further math often stays infinite (or becomes NaN in indeterminate cases like -Infinity / -Infinity).
It is a constant number, not a method.
Same value as -Infinity and -Number.POSITIVE_INFINITY.
Less than every finite Number: Number.NEGATIVE_INFINITY < -Number.MAX_VALUE.
Detect with === Number.NEGATIVE_INFINITY or !Number.isFinite(x).
Foundation
📝 Syntax
General form of the static property Number.NEGATIVE_INFINITY:
JavaScript
Number.NEGATIVE_INFINITY
Value
The same as the negative value of the global Infinity property (-Infinity).
-Number.MAX_VALUE is still finite. Doubling its magnitude crosses into Number.NEGATIVE_INFINITY.
📈 Practical Patterns
MDN-style checks, division by zero, and isFinite.
Example 3 — MDN Overflow Guard
Branch when a value is exactly negative Infinity.
JavaScript
function checkNumber(smallNumber) {
if (smallNumber === Number.NEGATIVE_INFINITY) {
return "Process number as -Infinity";
}
return smallNumber;
}
checkNumber(-Number.MAX_VALUE); // -1.7976931348623157e+308
checkNumber(-Number.MAX_VALUE * 2); // "Process number as -Infinity"
Pair it with POSITIVE_INFINITY when teaching signed infinities
❌ Don’t
Write (5).NEGATIVE_INFINITY or call it as a function
Assume -MAX_VALUE is already -Infinity
Ignore -Infinity / -Infinity becoming NaN
Use -Infinity as a general error code when NaN fits better
Forget the positive twin POSITIVE_INFINITY
Summary
Key Takeaways
Knowledge Unlocked
Five things to remember about Number.NEGATIVE_INFINITY
Static name for IEEE-754 negative infinity.
5
Core concepts
🔢01
Kind
static
API
∞02
Value
-Infinity
Constant
🚀03
Cause
overflow
Source
✓04
Check
isFinite
Validate
⚡05
Mutable
no
Readonly
❓ Frequently Asked Questions
Number.NEGATIVE_INFINITY is the negative Infinity value on Number. It is the same as -Infinity (and -Number.POSITIVE_INFINITY). Example: -Number.MAX_VALUE * 2 equals Number.NEGATIVE_INFINITY.
Yes. Read it on Number itself: Number.NEGATIVE_INFINITY. There is no (5).NEGATIVE_INFINITY on number instances, and it is not a method.
They are opposite IEEE-754 infinities. Number.NEGATIVE_INFINITY === -Number.POSITIVE_INFINITY is true. Both are non-finite numbers.
Compare with Number.NEGATIVE_INFINITY, or use Number.isFinite(x) which returns false for Infinity, -Infinity, and NaN.
No. -Number.MAX_VALUE is still a finite Number (the most negative finite). Going more negative — for example -Number.MAX_VALUE * 2 — becomes Number.NEGATIVE_INFINITY.
It is Baseline Widely available and supported in every modern browser and Node.js.
Did you know?
IEEE-754 has signed infinities and signed zeros. That is why 1 / 0 is Infinity while -1 / 0 is -Infinity, and why dividing a positive by -Infinity yields -0.