Number.MIN_VALUE

Number.MIN_VALUE 静的データプロパティは、 JavaScript において表すことが可能な最小の正の数値を表します。

試してみましょう

2-1074、または 5E-324 です。

Number.MIN_VALUE のプロパティ属性
書込可能 不可
列挙可能 不可
設定可能 不可

解説

Number.MIN_VALUE プロパティは、浮動小数点の精度で表すことができる最小の正の数です(最も小さな負の数ではありません)。言い換えれば、最も 0 に近い数です。ECMAScript の仕様書では、実装が対応する必要のある精度を定義していません。代わりに仕様書では、「その実装で実際に表すことができる、 0 ではない最も小さな正の数でなければならない」とあります。これは、小さな 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 の使用

以下のコードは、2 つの数値を割り算しています。その結果が MIN_VALUE より大きいか等しい場合は、func1 関数が呼び出されます。それ以外の場合は、func2 関数が呼び出されます。

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

仕様書

Specification
ECMAScript Language Specification
# sec-number.min_value

ブラウザーの互換性

BCD tables only load in the browser

関連情報