Math.random()

0~1の範囲(0は含み、1は含まない)の浮動小数点数の擬似ランダム値を返します。その後、用途に合わせて計算処理を行います。

Javaと同様に現在時刻をシードにして、ランダム値を生成します。

文法

Math.random()

引数はありません。

JavaScriptの数値は、 最近接偶数への丸め(round-to-nearest-even)の振る舞いをする、 IEEE 754の浮動小数点数であり、 これらの範囲はこのMath.random()のようなケースを除いて精密では無く、 非常に稀なケース(2の62乗のような)を除いて、通常は上限に依存して算出されることに注意してください。(翻訳に自信なし)

// 0~1の(0は含み、1は含まない)ランダム値を返します。
function getRandom() {
  return Math.random();
}
// min~maxの(minは含み、maxは含まない)ランダム値を返します。
function getRandomArbitrary(min, max) {
  return Math.random() * (max - min) + min;
}
// min~maxの(minは含み、maxは含まない)ランダム整数を返します。
// Math.random()を使用すると、不均一な分布になってしまいます!
function getRandomInt(min, max) {
  return Math.floor(Math.random() * (max - min)) + min;
}

仕様

ブラウザ互換性

デスクトップ
機能 Chrome Firefox
(Gecko)
IE Opera Safari
基本
モバイル
機能 Android Chrome for
Android
Firefox
Mobile
IE
Mobile
Opera
Mobile
Safari
Mobile
基本

 Back to top

© 2017 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.

このページは、ページトップのURL先のMozilla Developer Network(以下、MDN)のコンテンツを翻訳した内容を基に構成されています。 構成について異なる点も含まれますので、下記の項目を確認し、必要に応じて元のコンテンツをご確認ください。 もし、誤訳などの間違いを見つけましたら、 @tomofまで教えていただければ幸いです。

  • 特定のブラウザに特化しすぎている情報やあまりにも古い情報、 または試験的に導入されているようなAPIや機能については、省略していることがあります。
  • 例やデモについて、実際にページ内で動作させる関係で一部ソースコードを変更している場合や、 その例で使用しているコンテンツの単語や文章などを日本人向けに変更しいてる場合があります。
  • MDNの更新頻度が高いため、元のコンテンツと比べ情報が古くなっている可能性があります。
  • "訳注:"などの断わりを入れた上で、日本人向けの情報の追記を行っている事があります。