JavaScriptの組み込みオブジェクトMathを学ぶ

JavaScript

Math

Mathは数学を司る標準組み込みオブジェクトです。
定数や関数が搭載されています。

Math.abs()

絶対値(Absolute value)を返します。absはabsolute: 絶対の意味を持つ。

Math.abs(-10)
// 10
Math.abs(10)
// 10

※絶対値: 原点0からの距離をあらわす値のこと。

Math.sign()

引数に渡された数値の符号を返します。Number以外はNaNが返ります。
数値の符号を取得したい場合に使用します。ちなみにsignは符号の意味を持つ。

Math.sign(100)
// 1
Math.sign(-999)
// -1
Math.sign(0)
// 0

Math.abs()とMath.sign()の組み合わせ
絶対値と符号を掛け合わせる。

var exampleFunc = function (x) {
  return Math.abs(x) * Math.sign(x)
}
exampleFunc(-100)
// -100

Math.pow()

累乗の計算を行う。Power(累乗)の略。

Math.pow(base, exponent)
Math.pow(2, 31) // 2147483648
Math.pow(-2, 31) // -2147483648

※累乗の指数
※冪乗の定義は、自然数・整数という縛りがない

Math.trunc()

引数として与えた数の小数部の桁を取り除くことによって整数部を返します。
ちなみにtruncは切り捨ての意味です。

Math.trunc(42.195)
// 42

Math.floor()

与えられた数値以下の最大の整数を返します。

Math.floor(5.9)
// 5
Math.floor(-5.9)
// -6

10進数と16進数の変換

16進数への変換は、Number.prototype.toString(16)

Number(2147483647).toString(16) // "7fffffff"
Number(-2147483648).toString(16) // "-80000000"
// ※-2147483647はMath.pow(2, 31) - 1

先頭に0xを付けると、16進数であることを示している。付けないと構文上エラーが発生する。

16進数から10進数への変換は、Number.parseInt("16進数", 16)または、グローバルのparseInt("16進数", 16)

parseInt("7fffffff", 16) // 2147483647
parseInt("-80000000", 16) // -2147483648

マメ

符号付き32ビット整数は -2の32乗から2の32乗-1で表現される。

JSの最大値: Number.MAX_SAFE_INTEGER(9007199254740991)
JSの最小値: Number.MIN_SAFE_INTEGER(-9007199254740991)

※Numberの静的プロパティ
※Mathは数学でNumberは数値を扱う

参考