Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
* Some parts of this feature may have varying levels of support.
Math は名前空間オブジェクトで、数学的な定数と関数を提供する静的プロパティおよびメソッドがあります。
他のグローバルオブジェクトと異なり、Math はコンストラクターではありません。 new 演算子と共に使用したり、 Math オブジェクトを関数として呼び出したりすることはできません。 Math のプロパティとメソッドはすべて静的です。
メモ: 多くの Math 関数の精度は実装に依存します。
これは、ブラウザーごとに結果が異なる場合があることを意味し、同じ JavaScript エンジン上であっても、 OS やアーキテクチャが異なれば結果が異なる場合があります。
ネイピア数 (オイラー数)。これは自然対数の底として用いられる数学定数で、約 2.718 です。
Math.LN1010 の自然対数。約 2.303 です。
Math.LN22 の自然対数。約 0.693 です。
Math.LOG10E10 を底とした E の対数。約 0.434 です。
Math.LOG2E2 を底とした E の対数。約 1.443 です。
Math.PI円周率。約 3.14159 です。
Math.SQRT1_2½ の平方根 (または 1/√2 と等しい数)。約 0.707 です。
Math.SQRT22 の平方根。約 1.414 です。
Math[Symbol.toStringTag][Symbol.toStringTag] プロパティの初期値は文字列 "Math" です。このプロパティは Object.prototype.toString() で使用されます。
入力値の絶対値を返します。
Math.acos()入力値のアークコサイン (逆余弦) を返します。
Math.acosh()入力値のハイパーボリックアークコサイン (双曲線逆余弦) を返します。
Math.asin()入力値のアークサイン (逆正弦) を返します。
Math.asinh()入力値のハイパーボリックアークサイン (双曲線逆正弦) を返します。
Math.atan()入力値のアークタンジェント (逆正接) を返します。
Math.atan2()引数で指定された比率のアークタンジェント (逆正接) を返します。
Math.atanh()入力値のハイパーボリックアークタンジェント (双曲線逆正接) を返します。
Math.cbrt()入力値の立方根を返します。
Math.ceil()x 以上の最小の整数を返します。
Math.clz32()x を 2 進数 32 ビット整数値で表した数の先頭の 0 の個数を返します。
Math.cos()入力値のコサイン (余弦) を返します。
Math.cosh()入力値のハイパーボリックコサイン (双曲線余弦) を返します。
Math.exp()ex を返します。ここで x は引数であり、e はオイラー定数(2.718…, 自然対数の底)です。
Math.expm1()exp(x) から 1 を引いた値を返します。
Math.floor()入力値以下の最大の整数を返します。
Math.f16round()入力値に最も近い半精度浮動小数点表現を返します。
Math.fround()入力値に最も近い単精度浮動小数点表現を返します。
Math.hypot()引数の二乗和の平方根を返します。
Math.imul()入力値の 32 ビット乗算の結果を返します。
Math.log()入力値の自然対数(㏒e)を返します。
Math.log10()入力値の 10 を底とした対数 (log10) を返します。
Math.log1p()入力値の 1 + x の自然対数(㏒e)を返します。
Math.log2()入力値の 2 を底とした対数 (log2) を返します。
Math.max()引数として与えた複数の値の中で最大の値を返します。
Math.min()引数として与えた複数の値の中で最小の値を返します。
Math.pow()x を y で累乗した値、すなわち xy を返します。
Math.random()0 以上 1 未満の擬似乱数を返します。
Math.round()x を四捨五入して、近似の整数を返します。
Math.sign()入力値の符号を返します。x が正、負、 0 のいずれであるかを返します。
Math.sin()入力値のサイン (正弦) を返します。
Math.sinh()入力値のハイパーボリックサイン (双曲線正弦) を返します。
Math.sqrt()入力値の平方根を返します。
Math.sumPrecise()渡された反復可能オブジェクトの数値の合計を返します。中間結果における浮動小数点精度の損失を回避します。
Math.tan()入力値のタンジェント (正接) を返します。
Math.tanh()入力値のハイパーボリックサイン (双曲線正接) を返します。
Math.trunc()入力値の小数点以下を削除し、整数の部分を返します。
三角関数 (sin(), cos(), tan(), asin(), acos(), atan(), atan2()) は、角度にラジアンを要求したり、返したりします。
人間は角度で考える傾向があり、(CSS 座標変換など)一部の関数角度を受け付けますので、手軽に両者の間を変換する関数を用意しておくといいでしょう。
正三角形の高さを計算したい場合、側辺の長さが 100 であるとわかっている場合は、隣の角に正接を乗じた長さは、反対側と等しくなるという数式を使用することができます。
JavaScript では、次のようにして実現することができます。
degToRad() 関数を使用して 60 度をラジアンに変換しています。これは Math.tan() がラジアンの入力値を要求するからです。
これは Math.random() と Math.floor() の組み合わせで実現できます。
| ECMAScript® 2027 Language Specification # sec-math-object |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2025年10月2日 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.