本頁の目次 目次 次頁: 15-9_Date_Objects 前頁: 15-7_Number_Objects
Math オブジェクトは、関数であるものもある名前のついたプロパティを持つ、単一のオブジェクトである。
Math オブジェクトの内部 [[Prototype]] プロパティの値は、 Object プロトタイプオブジェクトである (セクション 15.2.3.1)。 Math オブジェクトの内部 [[Class]] プロパティの値は、 "Math" である。
Math オブジェクトは [[Construct]] プロパティを持たない; Math オブジェクトを new
式でコンストラクタとして使用することは出来ない。
Math オブジェクトは [[Call]] プロパティを持たない; Math オブジェクトを関数として呼出すことは出来ない。
NOTE 本仕様において、フレーズ "x の数値" はセクション 8.5 に定義する技術的な意味を持つ。
自然対数の低 e の数値であり、おおよそ 2.7182818284590452354 である。
このプロパティは、属性 { DontEnum, DontDelete, ReadOnly } を持つ。
10 の自然対数の数値であり、おおよそ 2.302585092994046 である。
このプロパティは、属性 { DontEnum, DontDelete, ReadOnly } を持つ。
2 の自然対数の数値であり、おおよそ 0.6931471805599453 である。
このプロパティは、属性 { DontEnum, DontDelete, ReadOnly } を持つ。
2 を低とする、自然対数の低 e の対数の数値; この値はおおよそ 1.4426950408889634 である。
このプロパティは、属性 { DontEnum, DontDelete, ReadOnly } を持つ。
NOTE Math.LOG2E の値はおおよそ Math.LN2 の値の逆数である。
10 を低とする、自然対数の低 e の対数の数値; この値はおおよそ 0.4342944819032518 である。
このプロパティは、属性 { DontEnum, DontDelete, ReadOnly } を持つ。
NOTE Math.LOG10E の値は、おおよそ Math.LN10 の値の逆数である。
π, 直径に対する円周の比 の数値であり、おおよそ 3.1415926535897932 である。
このプロパティは、属性 { DontEnum, DontDelete, ReadOnly } を持つ。
1/2 の平方根の数値であり、おおよそ 0.7071067811865476 である。
このプロパティは、属性 { DontEnum, DontDelete, ReadOnly } を持つ。
NOTE Math.SQRT1_2 の値は、おおよそ Math.SQRT2 の値の逆数である。
2 の平方根の数値であり、おおよそ 1.4142135623730951 である。
このプロパティは、属性 { DontEnum, DontDelete, ReadOnly } を持つ。
このセクションにあける各関数は、引数のそれぞれについて (2 個以上の場合は左から右の順に) ToNumber 演算子を適用し、そして結果の数値上で計算を行う。
下に説明する関数において、記号 NaN, -0, +0, -∞, +∞ は、セクション 8.5 に述べる数値を参照する。
NOTE 関数 acos, asin, atan, atan2, cos, exp, log, pow, sin, sqrt の振る舞いは、重要な境界値をあらわすある種の引数値に対して規定の結果を要求するだけで、他は正確にはここには規定されない。他の引数値については、これらの関数は、ありふれた数学関数の結果の近似値の算出が意図されるが、近似のアルゴリズムの選択においてある程度の自由度が許される。実装者は、与えられたハードウェアプラットフォーム上で C プログラマが利用可能なものと同じ ECMAScript の数学ライブラリを使用できるべきであると一般的に意図される。
アルゴリズムの選択が実装に残されたとはいえ、実装は、 Sun Microsystems による自由配布可能な数学ライプラリ(fdlibm-comment@sunpro.eng.sun.com) fdlibm に含まれる IEEE 754 算数に近似値アルゴリズムを使用することを推奨される (この標準で規定はされない) 。本仕様はまた、重要な境界値をあらわすある種の引数値に対して規定の結果を要求する。
x の絶対値を返す; 結果は x と同じ大きさで、正符号を持つ。
実装依存で x のアークコサインの近似値を返す。結果はラジアンで表現され、 +0 から +∞ の範囲である。
実装依存で x のアークサインの近似値を返す。結果はラジアンで表現され、 -π/2 から +π/2 の範囲である。
実装依存で x のアークタンジェントの近似値を返す。結果はラジアンで表現され、 -π/2 から +π/2 の範囲である。
引数 y と x の商 y/x のアークタンジェントを実装依存の近似値で返す。 y と x の符号は結果の四分円の決定に使用される。故意に、また伝統的に、引数 2 つのアークタンジェント関数は一つ目の引数が y で 2 番目が x であることに注意。 結果はラジアンで表され、 -∞ から +∞ の範囲である。
x より小さくなく数学的整数と等しい、最小の (-∞ に近い) 数値を返す。 x が既に整数ならば、 結果は x である。
Math.ceil(x) の値は、 -Math.floor(-x) の値と同じである。
実装依存で x のコサインの近似値を返す。引数はラジアンで表現される。
実装依存で x の指数関数 (e の x 乗、 e は自然対数の低) の近似値を返す。
x より大きくなく数学的整数と等しい、最大の (+∞ に近い) 数値を返す。 x が既に整数ならば、 結果は x である。
NOTE Math.floor(x) の値は -Math.ceil(-x) の値と等しい。
実装依存で x の自然対数の近似値を返す。
0 個以上の引数を与えられ、各引数に ToNumber を呼出し、結果の値の最大を返す。
max メソッドの length プロパティは 2 である。
0 個以上の引数を与えられて、各引数に ToNumber を呼出し、結果の値の最小を返す。
min メソッドの length プロパティは 2 である。
実装依存で x の y 乗 の近似値を返す。
実装依存のアルゴリズムまたは手順で、ランダムに、または擬似的にランダムに、おおよそ一定の配分で選ばれる 0 以上 1 未満の正符号の数値を返す。この関数は引数をとらない。
x に接近する数学的整数に等しい数値を返す。 2 つの整数値が x に等しく接近しているならば、結果は +∞ に近い方の数値である。 x が既に整数ならば、 結果は x である。
NOTE Math.round(3.5) は 4 を返すが、 Math.round(-3.5) は -3 を返す。
NOTE Math.round(x) の値は Math.floor(x+0.5) の値と等しいが、 x が -0 であるか、または 0 より小さく -0.5 と同じかより大きい場合を除く; これらのケースで Math.round(x) は -0 を返すが、 Math.floor(x+0.5) は +0 を返す。
実装依存で x のサインの近似値を返す。引数はラジアンで表現される。
実装依存で x の平方根の近似値を返す。
実装依存で x のタンジェントの近似値を返す。引数はラジアンで表現される。