Number.MIN_VALUE
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The Number.MIN_VALUE
static data property represents the smallest positive numeric value representable in JavaScript.
Try it
Value
2-1074, or 5E-324
.
Property attributes of Number.MIN_VALUE | |
---|---|
Writable | no |
Enumerable | no |
Configurable | no |
Description
Number.MIN_VALUE
is the smallest positive number (not the most negative number) that can be represented within float precision — in other words, the number closest to 0. The ECMAScript spec doesn't define a precise value that implementations are required to support — instead the spec says, "must be the smallest non-zero positive value that can actually be represented by the implementation". This is because small IEEE-754 floating point numbers are denormalized, but implementations are not required to support this representation, in which case Number.MIN_VALUE
may be larger.
In practice, its precise value in mainstream engines like V8 (used by Chrome, Edge, Node.js), SpiderMonkey (used by Firefox), and JavaScriptCore (used by Safari) is 2-1074, or 5E-324
.
Because MIN_VALUE
is a static property of Number
, you always use it as Number.MIN_VALUE
, rather than as a property of a number value.
Examples
Using MIN_VALUE
The following code divides two numeric values. If the result is greater than or equal to MIN_VALUE
, the func1
function is called; otherwise, the func2
function is called.
if (num1 / num2 >= Number.MIN_VALUE) {
func1();
} else {
func2();
}
Specifications
Specification |
---|
ECMAScript Language Specification # sec-number.min_value |
Browser compatibility
BCD tables only load in the browser