コンテンツにスキップ

JavaScript/Math/max

出典: フリー教科書『ウィキブックス(Wikibooks)』

Math.max(...args) は、引数として与えられた数値の中で最大の値を返します。引数は1つ以上指定する必要があります[1]

  • 引数が与えられない場合、-Infinity を返します。
  • 引数が NaN の場合、NaN を返します。
  • 引数が +0 または -0 の場合、+0 を返します。
  • 引数が Infinity の場合、Infinity を返します。
  • 引数が -Infinity の場合、-Infinity を返します。

[編集]

最大値を計算するプログラム

[編集]

以下のプログラムは、ユーザーが入力した値の中で最大の値を計算します。

constf=p=>{for(;;){a=prompt(`${p}は何ですか?`);if(!isNaN(a))returna;alert(`${p}に、入力ミスがあります。 "${a}"`);}}for(;;){constx=f("値1");consty=f("値2");constz=f("値3");constmax=Math.max(x,y,z);if(!isNaN(max)){alert(`${x}, ${y}, ${z} の中で最大の値は ${max} です。`);break;}alert("入力が大きすぎます。");}

このプログラムでは、Math.max を使用して3つの値の中で最大の値を計算しています。ユーザーが入力した値が NaNInfinity の場合、適切に処理されます。

配列の最大値を計算するプログラム

[編集]

以下のプログラムは、配列の最大値を計算します。

constf=p=>{for(;;){a=prompt(`${p}は何ですか?`);if(!isNaN(a))returna;alert(`${p}に、入力ミスがあります。 "${a}"`);}}for(;;){constx=f("値1");consty=f("値2");constz=f("値3");constary=[x,y,z];constmax=Math.max(...ary);if(!isNaN(max)){alert(`${ary} の中で最大の値は ${max} です。`);break;}alert("入力が大きすぎます。");}

このプログラムでは、Math.max を使用して配列の最大値を計算しています。... 演算子を使用して、配列を展開しています。

注意点

[編集]
  • 引数の数: Math.max は、1つ以上の引数を必要とします。引数が与えられない場合、-Infinity を返します。
  • 戻り値の範囲: Math.max の戻り値は、引数の中で最大の値です。
  • 精度: 浮動小数点演算の特性上、Math.max の結果には微小な誤差が含まれることがあります。

脚註

[編集]
  1. ^これは、数学的には として定義されます。

外部リンク

[編集]


close