2026年4月16日
JavaScript Math オブジェクトとは?
JavaScriptには数学的な計算を行うための Mathオブジェクト が組み込まれています。四捨五入・絶対値・最大値・乱数など、よく使う計算をメソッドとして提供しています。
Math は new でインスタンスを作らず、直接 Math.メソッド名() の形で使います。
丸め処理
Math.round(3.5); // 4(四捨五入)
Math.round(3.4); // 3
Math.floor(3.9); // 3(切り捨て)
Math.floor(-3.1); // -4
Math.ceil(3.1); // 4(切り上げ)
Math.ceil(-3.9); // -3
Math.trunc(3.9); // 3(小数部分を切り捨て)
Math.trunc(-3.9); // -3
👉 JavaScriptとは?初心者向け解説も参考にしてください。
最大値・最小値・絶対値
Math.max(1, 5, 3, 9, 2); // 9(最大値)
Math.min(1, 5, 3, 9, 2); // 1(最小値)
Math.abs(-7); // 7(絶対値)
Math.pow(2, 10); // 1024(べき乗:2の10乗)
Math.sqrt(16); // 4(平方根)
乱数の生成
Math.random() は0以上1未満のランダムな小数を返します。
Math.random(); // 例:0.7234...
// 1〜10のランダムな整数
const rand = Math.floor(Math.random() * 10) + 1;
// 1〜6のサイコロ
const dice = Math.floor(Math.random() * 6) + 1;
// min〜maxのランダムな整数
function getRandom(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
🔥 配列入門で実践してみましょう。
定数
Math.PI; // 3.141592653589793(円周率)
Math.E; // 2.718281828459045(自然対数の底)
Math.SQRT2; // 1.4142135623730951(√2)
💡 スコープとはで基礎を確認できます。
Mathオブジェクトの実践的な使い方
Mathオブジェクトを使った実践的な例を紹介します。プログラミングでよく使う場面ばかりなので、覚えておくと便利です。
使い方1:ランダムな整数を作る
Math.random()は0以上1未満の小数を返します。整数のランダムな数が欲しいときは、Math.floor()と組み合わせます。たとえば1〜6のサイコロを作りたいなら、Math.floor(Math.random() * 6) + 1と書きます。Math.random() * 6で0〜5.999...の数を作り、Math.floor()で小数点以下を切り捨て、+1で1〜6にずらします。
使い方2:最大値と最小値を求める
Math.max()は引数の中で一番大きい値を返します。Math.min()は一番小さい値を返します。テストの最高点や最低点を求めるときに使えます。配列の中から最大値を求めたいときは、スプレッド構文(...)と組み合わせてMath.max(...配列名)と書きます。
使い方3:小数を丸める
Math.round()は四捨五入します。Math.ceil()は切り上げ、Math.floor()は切り捨てです。消費税の計算で端数を処理するときに使います。たとえば税込み価格を計算して、1円未満を切り捨てたいときはMath.floor()を使います。
使い方4:絶対値を求める
Math.abs()は絶対値(ぜったいち)を返します。絶対値とは、マイナスの符号を取り除いた値のことです。Math.abs(-5)は5になります。2つの数の差を求めるときに便利です。
使い方5:べき乗を計算する
Math.pow(底, 指数)でべき乗を計算できます。Math.pow(2, 3)は2の3乗で8です。面積や体積の計算に使えます。ES2016以降は「**」演算子でも書けます。2 ** 3も8になります。
Mathオブジェクトでよくあるミス
ミス1:Math.random()が整数を返すと思い込む
Math.random()は必ず小数を返します。整数が欲しいときはMath.floor()やMath.round()で変換する必要があります。
ミス2:Math.floor()とMath.round()を混同する
Math.floor(2.7)は2(切り捨て)、Math.round(2.7)は3(四捨五入)です。用途に応じて使い分けましょう。
ミス3:Math.max()に配列をそのまま渡す
Math.max([1, 2, 3])はNaN(計算できない)になります。配列を渡すときはMath.max(...[1, 2, 3])のようにスプレッド構文を使いましょう。
数学が苦手でも大丈夫です。プログラミングで使う数学は、四則演算と簡単な関数だけで十分です。必要になったときに調べて使えれば問題ありません。まずは実際に手を動かしてみましょう。
まとめ
- ✅ Math.round():四捨五入、Math.floor():切り捨て、Math.ceil():切り上げ
- ✅ Math.max() / min():最大値・最小値
- ✅ Math.random():0以上1未満の乱数
- ✅ Math.PI:円周率(3.14159...)
JavaScriptの基礎はJavaScript入門で復習できます。
あわせて読みたい記事
- JavaScriptとは?初心者向け解説 — JS基礎に戻る
- JavaScript変数入門 — 変数に結果を格納
- JavaScript関数入門 — 関数でランダム処理をまとめる
- JavaScript配列入門 — 配列とMathの組み合わせ
- JavaScriptループ入門 — ループで複数回ランダム生成
- JavaScript練習問題 — 実践で使ってみる