/ Published in: JavaScript
The usual way to shuffle an array uses the .sort() method with Math.round(Math.random())-0.5
This solution is highly biased based on the sort algorithm used by the browsers. A sort comparison operation has to fulfill the condition "if a>b then b
This solution is highly biased based on the sort algorithm used by the browsers. A sort comparison operation has to fulfill the condition "if a>b then b
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
// (C) Stephen "felgall" http://www.codingforums.com/showthread.php?t=252059 Array.prototype.shuffle = function() { var s = []; while (this.length) s.push(this.splice(Math.random() * this.length, 1)); while (s.length) this.push(s.pop()); return this; }