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
-
JavaScriptで2つの整数間のランダムな整数を生成する方法
本記事では、ちょうど2つの数値を要素として持つ配列(範囲の指定)を受け取り、その範囲内(両端を含む)に収まるランダムな整数を生成するJavaScript関数の作成方法を解説します。ランダムな数値の生成には標準組み込みオブジェクトの Math.random() を使用し、小数点以下を切り捨てて整数化するために Math.floor() を組み合わせます。実装コードconst range = [5, 15]; const randomBetween = ([min, max]) => { // +1 することで最大値も範囲に含める const random = Math.ra
-
MySQLでランダムな4桁の数値を生成する方法を解説
MySQLでランダムな4桁の数値を生成するには?MySQLでは、RAND()関数とFLOOR()関数を組み合わせることで、ランダムな4桁の数値を簡単に生成できます。基本的な構文は以下の通りです。SELECT FLOOR(0 + RAND() * 10000);RAND()は0以上1未満のランダムな浮動小数点数を返し、それに10000を掛けることで0〜9999の範囲の値を生成します。FLOOR()で小数点以下を切り捨てることで、整数の4桁の数値が得られます。実際に、テーブルのカラムへランダムな4桁の数値を設定する手順を見ていきましょう。1. テーブルを作成するまず、サンプル用のテーブルを作成しま