配列内のデータをシャッフルする

説明

配列内のデータをシャッフルするには、乱数を使って回数分だけ配列内容を入れ替えます。サンプルでは52枚のトランプに数字が割当られているものとし100回シャッフルしています。

サンプルプログラム

var data = new Array();
for (var i=0; i<52; i++) data[i] = i; // 52個がシャッフル対象(トランプの総数)
for (var i=0; i<100; i++) { // 100はシャッフルする回数
var n1 = Math.floor(Math.random() * 52);
var n2 = Math.floor(Math.random() * 52);
var n = data[n1];
data[n1] = data[n2];
data[n2] = n;
}
for (i=0; i<52; i++) document.write(data[i]+"<br>");
サンプルを実行
[戻る]