JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

JavaScriptで指定した範囲内の乱数を生成する方法

本記事では、最小値と最大値の2つの引数を受け取り、その範囲内(最大値は含まない)の擬似乱数を返す関数 createRandom を作成する方法を解説します。

コード例

const min = 3;
const max = 9;
const createRandom = (min, max) => {
    const diff = max - min;
    const random = Math.random();
    return Math.floor((random * diff) + min);
}
console.log(createRandom(min, max));

コードの解説

この関数の仕組みは以下の手順で理解できます。

  • まず、max から min を引いて、乱数の範囲となる幅(差分)を求めます。
  • Math.random() を使って、0 以上 1 未満のランダムな数値を生成します。
  • 生成した乱数に差分を掛けることで、0 以上 diff 未満のランダムな数値を作り出します。
  • 最後に min を加算することで、min 以上 max 未満の範囲内の乱数が得られます。小数点以下は Math.floor() によって切り捨てられ、整数として返されます。

なお、Math.random() は 1 を返さないため、この方法では最大値そのものが出力されることはありません。「最小値以上・最大値未満」の整数が必要な場合に適したアプローチです。

出力結果

このコードをコンソールで実行すると、次のような出力が得られます(乱数のため、実行するたびに結果は変わります)。

6
  1. JavaScriptで2つの整数間のランダムな整数を生成する方法

    本記事では、ちょうど2つの数値を要素として持つ配列(範囲の指定)を受け取り、その範囲内(両端を含む)に収まるランダムな整数を生成するJavaScript関数の作成方法を解説します。ランダムな数値の生成には標準組み込みオブジェクトの Math.random() を使用し、小数点以下を切り捨てて整数化するために Math.floor() を組み合わせます。実装コードconst range = [5, 15]; const randomBetween = ([min, max]) => { // +1 することで最大値も範囲に含める const random = Math.ra

  2. MySQLでランダムな4桁の数値を生成する方法を解説

    MySQLでランダムな4桁の数値を生成するには?MySQLでは、RAND()関数とFLOOR()関数を組み合わせることで、ランダムな4桁の数値を簡単に生成できます。基本的な構文は以下の通りです。SELECT FLOOR(0 + RAND() * 10000);RAND()は0以上1未満のランダムな浮動小数点数を返し、それに10000を掛けることで0〜9999の範囲の値を生成します。FLOOR()で小数点以下を切り捨てることで、整数の4桁の数値が得られます。実際に、テーブルのカラムへランダムな4桁の数値を設定する手順を見ていきましょう。1. テーブルを作成するまず、サンプル用のテーブルを作成しま