JavaScriptで特定の範囲内から数値が被らずにランダムに取り出す方法
2024/05/22
1位から20位のランキング内でJavaScriptを用いてランダムに表示させたかった。つまり特定の範囲内から数値が被らずにランダムに取り出したい。以下にソースコードをメモ。
ソースコード
const array = []; const limit = 5; for( let i = 0; i < limit; i++ ){ //0~limitまでの整数を順番に配列に格納 array[i] = i + 1; } const shuffle_array = []; //ランダムな数値を入れる配列の宣言 let random_key; //ランダムな数値を入れる変数の宣言 for( let i = 0; i < limit; i++ ){ // 0~limitまでループ random_key = Math.floor(Math.random()*array.length); //変数に指定した範囲(1-20)のランダムな整数値を入れる shuffle_array[i] = array[random_key]; //配列へ指定した範囲(1-20)のランダムな整数値を入れる array.splice(random_key, 1); //順番に整数を入れていた配列から、ランダム変数にあたる要素を削除 } console.log(shuffle_array); //Array(5) [ 2, 3, 4, 5, 1 ]
参考サイト
関連記事
-
-
JavaScriptで指定した変数が未定義(未宣言)かチェックする方法
JavaScriptで指定した変数が未定義(未宣言)かチェックしたいというケース ...
-
-
指定した要素に注釈を設定できる「Chardin.js」プラグインの利用方法
指定した要素に注釈を入れることができるjQueryプラグイン「Chardin.j ...
-
-
バニラJS対応(jQuery非依存)の画像スライダー系プラグイン「Flickity」の利用方法
画像スライダーを設置する場合「slick」プラグインを利用することが多い。ただ、 ...
-
-
バニラJavaScriptでdisplay:none/blockの切り替え方法
指定要素の表示非表示を切り替える場合jQueryだとhide/show使うか、t ...
-
-
Lightboxで画像拡大時に閉じるボタンの位置を右上に変更
Lightbox(バージョン2.7.1)で画像拡大時に閉じるボタンの位置を右下か ...