Number.MIN_VALUE

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

Number.MIN_VALUE 静态数据属性表示 JavaScript 中可表示的最小正数值。

试一试

function divide(x, y) {
  if (x / y < Number.MIN_VALUE) {
    return "Process as 0";
  }
  return x / y;
}

console.log(divide(5e-324, 1));
// Expected output: 5e-324

console.log(divide(5e-324, 2));
// Expected output: "Process as 0"

2-1074,或 5E-324

Number.MIN_VALUE 的属性特性
可写
可枚举
可配置

描述

Number.MIN_VALUE 是浮点精度内可表示的最小正数(而不是最负的数)——换句话说,最接近 0 的数。ECMAScript 规范没有定义实现必须支持的精确值——相反,规范中说:“必须是实现实际可以表示的最小的非零正值”。这是因为小的 IEEE-754 浮点数是 非规范化的,但实现不要求支持这种表示,在这种情况下 Number.MIN_VALUE 可能会更大。

实际上,在 V8(Chrome、Edge、Node.js 使用)、SpiderMonkey(Firefox 使用)和 JavaScriptCore(Safari 使用)等主流引擎中,它的精确值是 2-1074,或 5E-324

因为 MIN_VALUENumber 的静态属性,所以您总是将其用作 Number.MIN_VALUE,而不是作为数字值的属性。

示例

使用 MIN_VALUE

以下代码将两个数值相除。如果结果大于或等于 MIN_VALUE,则调用 func1 函数;否则,调用 func2 函数。

js
if (num1 / num2 >= Number.MIN_VALUE) {
  func1();
} else {
  func2();
}

规范

规范
ECMAScript® 2026 语言规范
# sec-number.min_value

浏览器兼容性

另见