JS Mathオブジェクト

 
 
Math は JavaScript の組み込みオブジェクトであり、平均の計算、絶対値の計算、四捨五入など、数学で一般的な計算を実装するために数学で一般的に使用されるいくつかの定数値と関数を提供します。

 

上記で紹介したオブジェクト ( Numberオブジェクト、 Stringオブジェクト、 Arrayオブジェクトなど) とは異なり、Math オブジェクトのプロパティやメソッドを呼び出すには、new 演算子を使用して事前に作成する必要はなく、Math オブジェクトを直接呼び出すことができます。オブジェクトとして、たとえば:

var pi_val = Math.PI; // 数学におけるπの値: 3.141592653589793
var abs_val = Math.sin(-5.35); // -5.35 の絶対値: 5.35

Math オブジェクトのプロパティ

次の表に、Math オブジェクトで提供される属性とその説明を示します。

属性 説明
E 算術定数 e、自然対数の底 (約 2.718 に等しい) を返します。
LN2 2 の自然対数を返します (0.693 にほぼ等しい)。
LN10 10 の自然対数を返します (2.302 にほぼ等しい)。
LOG2E e の底 2 の対数を返します (1.443 にほぼ等しい)。
LOG10E e の 10 を底とする対数を返します (0.434 にほぼ等しい)。
PI pi (約 3.14159 に等しい) を返します。
SQRT1_2 2 の平方根の逆数を返します (約 0.707 に等しい)。
SQRT2 2 の平方根を返します (1.414 にほぼ等しい)。

サンプルコードは次のとおりです。

 document.write(Math.E + "<br>"); // 出力:2.718281828459045
document.write(Math.LN2 + "<br>"); // 出力:0.6931471805599453
document.write(Math.LN10 + "<br>"); // 出力:2.302585092994046
document.write(Math.LOG2E + "<br>"); // 出力:1.4426950408889634
document.write(Math.LOG10E + "<br>"); // 出力:0.4342944819032518
document.write(Math.PI + "<br>"); // 出力:3.141592653589793
document.write(Math.SQRT1_2 + "<br>"); // 出力:0.7071067811865476
document.write(Math.SQRT2 + "<br>"); // 出力:1.4142135623730951 

Math オブジェクトのメソッド

Math オブジェクトで提供されるメソッドとその説明を次の表に示します。

方法 説明
abs() x の絶対値を返します
acos(x) x の逆余弦を返します
acosh(x) x の逆双曲線余弦を返します。
asin(x) x の逆正弦を返します
ashinh(x) x の逆双曲線正弦を返します。
atan(x) x の逆正接を返します
atanh(x) x の逆双曲線正接を返します。
atan2(y,x) y/x の逆正接を返します
cbrt(x) x の立方根を返します
ceil(x) x を切り上げます。つまり、x より大きい最小の整数を返します。
clz32(x) x を 32 個の符号なし整数のバイナリ形式に変換した後、先頭の 0 の数を返します。
cos(x) x のコサインを返します
cosh(x) x の双曲線余弦を返します。
exp(x) 算術定数 e の x 乗、つまり E xを返します。
expm1(x) exp(x) – 1 の値を返します。
floor(x) x を切り捨てます。つまり、x 未満の最大の整数を返します。
fround(x) x に最も近い単精度浮動小数点数を返します。
hypert([x, [y, […]]]) すべての引数の二乗和の平方根を返します。
imul(x, y) パラメータ x と y をそれぞれ 32 ビット整数に変換し、それらの乗算の結果を返します。
log(x) x の自然対数を返します。
log1p(x) x に 1 を加えた自然対数を返します。
log10(x) x の 10 を底とする対数を返します。
log2(x) x の底 2 の対数を返します。
max([x, [y, […]]]) 複数の引数のうち最大の値を返します
min([x, [y, […]]]) 複数の引数の最小値を返します。
pow(x,y) x の y 乗を返します
random() 0 から 1 までの乱数を返します
round(x) x の丸められた整数を返します
sign(x) x の符号、つまり数値が正、負、ゼロのいずれであるかを返します。
sign(x) x の正弦を返します
sinh(x) x の双曲線正弦を返します。
sqrt(x) x の平方根を返します
tan(x) x のタンジェントを返します
tanh(x) x の双曲線正接を返します。
toSource() 文字列「Math」を返します
trunc(x) x の整数部分を返します
valueOf() Math オブジェクトの元の値を返します。

サンプルコードは次のとおりです。

 document.write(Math.abs(-3.1415) + "<br>");             // 出力:3.1415
document.write(Math.acos(0.5) + "<br>");                // 出力:1.0471975511965979
document.write(Math.ceil(1.45) + "<br>");               // 出力:2
document.write(Math.exp(1) + "<br>");                   // 出力:2.718281828459045
document.write(Math.floor(5.99) + "<br>");              // 出力:5
document.write(Math.log(6) + "<br>");                   // 出力:1.791759469228055
document.write(Math.max(4, 8, 1, 9) + "<br>");          // 出力:9
document.write(Math.min(4, 8, 1, 9) + "<br>");          // 出力:1
document.write(Math.random() + "<br>");                 // 出力:0.9172594288928195
document.write(Math.pow(2, 3) + "<br>");                // 出力:8
document.write(Math.sign(-123) + "<br>");               // 出力:-1
document.write(Math.sqrt(125) + "<br>");                // 出力:11.180339887498949 
 

「 JS Mathオブジェクト」についてわかりやすく解説!絶対に観るべきベスト2動画

Math object
Learn JavaScript In Arabic #54 – Math – Random