そうすればMath.random()
、0 (含む) から 1 (含まない) までの乱数が返されることはわかっていますが、JS がこの数字を返す方法をどこで確認できますか?
MDN ページには下位レベルのコードは含まれていません。
ここのウィキペディアによると、乱数を取得する方法はたくさんありますが、JS が使用している方法はどれか。
どの乱数ジェネレーターを使用するかは、JavaScript エンジンのベンダーが選択します。
間隔で「乱数」を生成する限り、 ECMA 仕様[0, 1>
に適合します。
15.8.2.14 random()実装依存のアルゴリズムまたは戦略
を使用して、0 以上 1 未満の正符号を持つ Number 値を返します。この値は、ランダムまたは疑似ランダムに選択され、その範囲でほぼ均一に分布し ます。
出典:
http://www.ecma-international.org/ecma-262/5.1/#sec-15.8.2.14
ベンダーは、使用しているアルゴリズムを (私が見る限り) リストしていないため、(可能な場合) ソース コードをブラウズしたい場合を除き、見つけることはできません (とにかく簡単に)。
(セキュリティに関連して質問している場合: どちらのブラウザの組み込みのものもこの目的には適していないため、使用しないでください。)
乱数ジェネレータ math.random() は、Java のように現在の時刻からシードされます。