【JavaScript講座】Mathオブジェクト

Mathオブジェクト

前回は、文字列操作について紹介しました。

【JavaScript講座】文字列操作

2019.08.31

今回は、Mathオブジェクトについて。

文字列の Stringオブジェクトと同様、組み込み関数として使うだけなので、お手軽に実行できるのが魅力です。

それでは見ていきましょう。



Mathオブジェクト

Mathオブジェクトは、数値計算のときに扱う、組み込み関数です。

円周率を取得する

円周率は、PIプロパティで取得できます。

console.log(Math.PI);

結果は以下のようになります。

Mathオブジェクト

平方根(ルート)を取得する

平方根(ルート)は、sqrtメソッドで取得できます。

console.log(Math.sqrt(16));

結果は以下のようになります。

Mathオブジェクト

最大値を取得する

引数として与えた値の中から最大値を取得する、maxメソッドについて紹介します。

console.log(Math.max(2,5,1,13,7));

結果は以下のようになります。

Mathオブジェクト

四捨五入した値を取得する

四捨五入した値を取得するには、roundメソッドを使います。

console.log(Math.round(3.14));

結果は以下のようになります。

Mathオブジェクト

ランダム値を取得する

0 以上 1 未満の浮動小数点の値をランダムで取得できる、randomメソッドについて紹介します。

console.log(Math.random());

ブラウザで確認してみるとわかりますが、リロードするたびに値が変化することがわかるかと思います。

例えば、この randomメソッドを使って、サイコロのようなものをつくることもできます。

console.log(Math.floor(Math.random() * 6) + 1);

floorメソッドは、roundメソッドに似ているのですが、小数点以下を切り捨てるメソッドです。

0 以上 1 未満のランダム値に6倍して、その値の小数点以下を切り捨てます。

この状態だと 0 ~ 5 の整数値を取得することになるので、1 を加えることでサイコロのようなものを実現しています。

試してみましょう。

Mathオブジェクト

リロードを何回かするとサイコロのようなものになっていることがわかるかと思います。

Mathオブジェクト

サイコロ以外でももちろん使うことができます。

例えば、1 ~ 10 までの整数値をランダムで取得したいなら、以下のようにすれば良いのです。

console.log(Math.floor(Math.random() * 10) + 1);

応用すれば、配列からランダムで要素を選ぶということもできます。

最後に

いかがでしょうか。

roundメソッドなんかは、ゲームをつくったりするときに使いそうな組み込み関数です。

色々試して、遊んでいきます。