配列の中から複数のランダムな値を取り出したい時、 配列の要素数からランダムな数を取得し、array[n]とするのは簡単だが、要素数が少ないと取り出した値がダブる場合がある。 ダブりを防ぐ方法として、取得した値を要素から削除していく方法もあるが、元の配列の順序をランダムに入れ替え、その配列から順に取り出すのが簡単。 ただし、要素数が多くなると、方法によって処理速度が変わる。 代表的な二つの方法。 ■早い Array.prototype.shuffle = function(){ var i = this.length; while(i){ var j = Math.floor(Math.random()*i); var t = this[--i]; this[i] = this[j]; this[j] = t;