JavaScript 自分用メモ
Math.random( )
基本:Mathオブジェクトの random( ) メソッドを使う
- random( ) は 0〜1未満の小数を含む乱数を生成する
let random = Math.random();
console.log(random);
//0〜1未満の小数を含む乱数を生成 ex.0.752461466287883
ランダムな整数
基本:Math.floor( ) を使う
- Math.floor( ) は 与えられた数値以下の最大の整数を返す。
Math.floor(Math.random() * max);
例1:0,1,2 から ランダムな整数をとりたい。
- Math.random( ) は 0〜1未満を返すので、Math.floor( Math.random() * 2 );では0~1の整数を返してしまう。
- 最大値にプラス1をしてMath.floor( Math.random() * 3 ); で0~2のランダムな整数がとれる。
let random = Math.floor(Math.random() * 3)
console.log(random);
//0,1,2からランダムに返す
例2:0~10 までの ランダムな整数をとりたい。
- 最大値10にプラス1をしてMath.floor( Math.random() * 11 ); で0~10のランダムな整数がとれる。
let random = Math.floor(Math.random() * 11)
console.log(random);
//0~10の乱数(整数)を生成
範囲内のランダムな整数
基本:最大値の扱いに注意(未満か以下か)
Math.floor(Math.random() * (max - min) + min)
//max未満、min以上のランダムな整数を返す
Math.floor(Math.random() * (max+1 - min) + min)
//max以下、min以上のランダムな整数を返す
例:10~25 までの ランダムな整数をとりたい。
- let random = Math.floor(Math.random() * 取り出したい最大値+1) で取り出したい値までの乱数が生成される。
- 取り出したいのは、1~25ではなく、10~25なので 上の式から範囲の最小値10をマイナスする。
- そこに範囲の最小値を加える
//❶
let random = Math.floor(Math.random() * 26)
console.log(random);
//0~25の乱数(整数)を生成
//❷
let random = Math.floor(Math.random() * (26-10))
console.log(random);
//0~15の乱数(整数)を生成
//❸
let random = Math.floor(Math.random() * 16) + 10;
console.log(random);
//10~25の乱数(整数)を生成
関連記事 JavaScript
めもめも