Math.min()

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.

Math.min() は静的メソッドで、引数で渡されたもののうち最小の値を返します。引数がない場合は Infinity を返します。

試してみましょう

構文

js
Math.min()
Math.min(value1)
Math.min(value1, value2)
Math.min(value1, value2, /* …, */ valueN)

引数

value1, …, valueN

最小値が選択して返される 0 個以上の数値です。

返値

与えられた数のうちの最小の値です。1 つ以上の引数を数値に変換することができなかった場合は NaN を返します。引数が与えられなかった場合の結果は Infinity です。

解説

min()Math の静的メソッドなので、常に Math.min() として使用し、自分で Math オブジェクトを生成してそのメソッドとして使用しないでください。 (Math にはコンストラクターがありません)。

Math.min.length は 2 であり、少なくとも 2 つの引数を処理するように設計されていることを弱く示唆しています。

Math.min() の使用

変数 xy の小さい方を z に代入します。

js
const x = 10;
const y = -20;
const z = Math.min(x, y); // -20

Math.min() で値をクリップする

Math.min() は、次のようにしきい値以下に値をクリップするために用いられることがあります。

js
let x = f(foo);

if (x > boundary) {
  x = boundary;
}

これは次のように書くことができます。

js
const x = Math.min(f(foo), boundary);

Math.max() を用いれば、反対に、しきい値以上に値をクリップすることができます。

仕様書

Specification
ECMAScript Language Specification
# sec-math.min

ブラウザーの互換性

BCD tables only load in the browser

関連情報