新しいMath関数が実装された
概要
ES2015でMathオブジェクトに新しく入った17個の関数が実装された。
実装された関数
Math.sign(x) [3.22.17]
xが正の数なら+1、負の数なら-1、+0,-0ならそれぞれ+0,-0を返す
Math.trunc(x) [3.22.17]
floatが切り捨て、ceilが切り上げ、roundが四捨五入なのに対して、truncはxの整数部分を返す
つまり正の数に対してはfloat、負の数に対してはceilと同じ結果を返す
Math.hypot([v1 [, v2 [, ... ]]]) [3.24.7]
任意数の引数をとり、各引数の二乗の総和の二乗根を返す
つまり Math.sqrt(v1*v1 + v2*v2 + ...) と同じ結果を返す
Math.cbrt(x) [3.25.1]
xの三乗根("cube root")を返す
Math.imul(x, y) [3.18.4]
xとyの32ビット整数乗算結果を返す
主に最適化の為に重要
Math.fround(x) [3.24.39.2]
JSの通常数値、64bit浮動小数点型(double)を精度の低い32bit浮動小数点型(float)に直す
主に最適化の為に重要
Math.clz32(x) [3.24.39.2]
xをuint32としたときの先導する0ビットの数を返す("count leading zero")
(例)Math.clz32(100000000)『0b00000101111101011110000100000000』→ 5
主に最適化の為に重要
Math.log10(x) [3.24.7]
xが10の何乗になるかを返す
Math.log2(x) [3.24.7]
xが2の何乗になるかを返す
Math.log1p(x) [3.25.1]
Math.expm1(x) [3.25.1]
Math.cosh(x) [3.24.0]
Math.sinh(x) [3.24.0]
Math.tanh(x) [3.24.0]
Math.acosh(x) [3.24.0]
Math.asinh(x) [3.24.0]
Math.atanh(x) [3.24.0]
実装されたバージョン
V8 3.18.4 3.22.17 3.24.0 3.24.7 3.24.39.2 3.25.1(完了) 3.28.26(デフォルト有効)