勉強したことのメモ

webプログラマ見習いが勉強したことのメモ。

JavaScriptで特定の範囲内から整数値を、数値が被らずにランダムに取り出す

      2014/05/17

やりたかったのは1位から20位のランキング内で
JavaScriptを用いてランダムに表示させたかった。

最初ランダム関数? が思いついたけど被った時が面倒。

調べてみるとそのままコピペでいけそうなものがあり、
解決したが、その場でどういう内容なのかすぐに分からなかったのでメモ。

■ソース
<script>
var num = 20;

var arr = ;
for (var i = 0; i < n; i++) { // 0~nまでの整数を順番に配列arrに格納
arr[i] = i + 1;
}

var shuffledarr = ; //ランダムな数値を入れる配列の宣言
var randomIndex; //ランダムな数値を入れる変数の宣言

for (var i = 0; i < n; i++) { // 0~nまでループ
randomIndex = Math.floor(Math.random()*arr.length); //変数に指定した範囲(1-20)のランダムな整数値を入れる
shuffledarr[i] = arr[randomIndex]; //配列へ指定した範囲(1-20)のランダムな整数値を入れる
arr.splice(randomIndex, 1); //順番に整数を入れていた配列から、ランダム変数にあたる要素を削除
}
</script>

■その他
arr.splice(randomIndex, 1); が??ってなったけど
配列から要素を削除するものみたい。

一連の流れは分かったけど、一から書けといわれると
もっと遠回りして書いてしまいそう。

ちょっとでも流れを覚えておく。

■参考サイト
http://himaxoff.blog111.fc2.com/blog-entry-43.html

 - JavaScript

  関連記事

画像をドラッグ&ドロップでアップロード

■2015/04/15追記 以下記事の方が新しくて詳しい。 http://tai ...

javascriptとPHPで正規表現を使う場合

とりあえず使いそうなのは検索と置換。 ■javascript var str = ...

setTimeoutの注意点

javascriptのsetTimeoutにて変数を用いた際に 想定外の挙動を起 ...

IEでjavascript関数の初期値

あるJavaScriptの関数でchromeやfirefoxは正常に動いたけどI ...

3Dデータ(obj,stlファイル)をブラウザ上で表示する方法  

3Dデータをブラウザで表示させて、違う方向から見たり、縮小拡大をしたいという案件 ...

JavaScriptで多次元連想配列

JavaScriptで多次元の配列を作る際にいつも迷ってしまうのでメモ。 ■こう ...

クロスドメイン突破をjavascriptで行う

ajaxとかでクロスドメインを突破する際は、 PHPファイルを介すかJSONPを ...

JavaScriptで小数の計算(decimal.js)

JavaScriptで小数の計算をすると値がずれることがあった。調べてみるとJa ...

javascriptでスクロール

やりたかった事は、 ・javascript,jQuery使う ・スクロールさせた ...

javascriptで月末日を取得

以前、PHPで月末日を取得したけれども javascriptで月末日を扱いたいケ ...