JavaScript 入門 | 標準オブジェクト | Math オブジェクト
Math オブジェクト
Math オブジェクトは、数学でよく使用する定数と関数をあらかじめ実装した JavaScript 標準組み込みオブジェクトである。
Math オブジェクトは他のグローバルオブジェクトとは異なり、コンストラクター (constructor) が存在しない。 したがって、別途インスタンスを作成しなくても、Math オブジェクトのすべてのメソッドやプロパティを直接使用できる。
Math メソッド
JavaScript は Web ページで数学的な作業を簡単に行えるよう、さまざまな Math メソッドを提供している。 最もよく使用される代表的な Math メソッドは次のとおりである。
- Math.min()
- Math.max()
- Math.random()
- Math.round()
- Math.floor()
- Math.ceil()
- Math.sin()
ほとんどの Math メソッドは、Web ブラウザーごとに異なる結果値を得る可能性が高い。 同じ JavaScript インタープリターであっても、OS が異なると異なる結果値を返すことがある。 したがって、非常に正確な結果値が必要な作業には Math メソッドを使用しない方がよい。
Math.min() メソッド
Math.min() メソッドは、引数として渡された値のうち最も小さい数を返す。 引数が渡されなければ Infinity を返し、引数の中に比較できない値が含まれていれば NaN を返す。
Math.min(); // Infinity
Math.min(1, 10, -100, -10, 1000, 0); // -100
Math.min(1, 10, -100, -10, "-1000", 0); // -1000
Math.min(1, 10, -100, -10, "文字列", 0); // NaN
Math.max() メソッド
Math.max() メソッドは、引数として渡された値のうち最も大きい数を返す。 引数が渡されなければ -Infinity を返し、引数の中に比較できない値が含まれていれば NaN を返す。
Math.max(); // -Infinity
Math.max(1, 10, -100, -10, 100, 0); // 100
Math.max(1, 10, -100, -10, "1000", 0); // 1000
Math.max(1, 10, -100, -10, "文字列", 0); // NaN
Math.random() メソッド
Math.random() メソッドは、0 以上 1 未満の乱数 (random number) を返す。
var min = 10, max = 20;
Math.random(); // [0, 1)
Math.random() * (max - min) + min; // [min, max)
上の例で使用された ‘[’ 記号は「以上」を表し、’]’ 記号は「以下」を表す。
また、’(’ 記号は「より大きい」を表し、’)’ 記号は「より小さい」を表す。
Math.round() メソッド
Math.round() メソッドは、引数として渡された値を小数第 1 位で四捨五入し、その結果値を返す。
Math.round(10.49); // 10
Math.round(10.5); // 11
Math.round(-10.5); // -10
Math.round(-10.51); // -11
Math.floor() メソッド
Math.floor() メソッドは、引数として渡された値以下の数のうち、最も大きい整数を返す。
Math.floor(10.95); // 10
Math.floor(11.01); // 11
Math.floor(-10.95); // -11
Math.floor(-11.01); // -12
Math.ceil() メソッド
Math.ceil() メソッドは、引数として渡された値以上の数のうち、最も小さい整数を返す。
Math.ceil(10.95); // 11
Math.ceil(11.01); // 12
Math.ceil(11); // 11
Math.ceil(-10.95); // -10
Math.ceil(-11.01); // -11
Math.sin() メソッド
Math.sin() メソッドは、引数として渡された値のサイン (sine) 関数値を返す。
Math.sin(0); // 0
Math.sin(Math.PI / 2); // 1
JavaScript が提供する三角関数に関するすべてのメソッドは、角度の単位としてラジアン (radian) を使用する。 このとき、ラジアン単位と度数法の単位を相互に変換するには、次の公式を使用する。
構文
ラジアン値 = 度数法値 * (Math.PI / 180)
Math.PI は数学で使用する円周率 (π) の値を表す JavaScript 定数である。
したがって、おおよその値として 3.14159 を表す。