这段代码提供了两个方法对数组进行随机重排
<script> var count = 100000,arr = []; for(var i=0;i<count;i++){ arr.push(i); } //常规方法,sort() var t = new Date().getTime(); Array.prototype.sort.call(arr,function(a,b){ return Math.random()>.5 ? -1 : 1;}); document.write(arr+'<br/>'); var t1 = new Date().getTime(); document.write(t1-t); //以下方法效率最高 if (!Array.prototype.shuffle) { Array.prototype.shuffle = function() { for(var j, x, i = this.length; i; j = parseInt(Math.random() * i), x = this[--i], this[i] = this[j], this[j] = x); return this; }; } var t = new Date().getTime(); arr.shuffle(); document.write('<br/>'+arr+'<br/>'); var t1 = new Date().getTime(); document.write(t1-t); </script>