ここへジャンプ:

この翻訳は不完全です。英語から この記事を翻訳 してください。

概要

Math.random()関数は、[0, 1)(0以上、1未満)の範囲で浮動小数点の擬似乱数を返します。 また、範囲を指定することも可能です。 実装側で乱数生成アルゴリズムの初期シードを選択し、 ユーザーが初期シードを選択、またはリセットすることは出来ません。

Math.random() の提供する乱数は、暗号に使用可能な安全性を備えていません。セキュリティに関連する目的では使用しないで下さい。代わりにWeb Crypto API(より正確にはwindow.crypto.getRandomValues()メソッド)を使用して下さい。

構文

Math.random()

引数

無し

戻り値

0以上1未満の疑似ランダムな浮動小数点。

注記

Math は、コンストラクタではないので、常に Math.random() として、random を実行するようにしてください。決して Math のインスタンスを生成しないでください。これは、Java のような クラスベースの OO 言語 から類推して " 静的" なメソッドと呼ばれます。

例:Math.random の使用

JavaScript における数値は、IEEE 754 浮動小数点での「JIS丸め」 (round-to-nearest-even) をするため、以下の関数の値域が ( Math.random() 自体の値域が正しくても) 厳密ではないことに注意してください。非常に大きい境界値(253 以上)のうち極めて稀な数値で、通常なら返されないはずの上限値が出力されてしまうことがあり得ます。

// 0 以上 1 未満の乱数を返す関数
function getRandom() {
  return Math.random();
}


// min から max までの乱数を返す関数
function getRandomArbitary(min, max) {
  return Math.random() * (max - min) + min;
}


// min から max までの乱整数を返す関数
// Math.round() を用いると、非一様分布になります!
function getRandomInt(min, max) {
  return Math.floor( Math.random() * (max - min + 1) ) + min;
}

ドキュメントのタグと貢献者

 最終更新者: mrpepper023,