JavaScript对数组进行随机重排的方法


Posted in Javascript onJuly 22, 2015

本文实例讲述了JavaScript对数组进行随机重排的方法。分享给大家供大家参考。具体如下:

这里提供了两个方法对数组进行随机重排。

<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>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
用cssText批量修改样式
Aug 29 Javascript
在多个页面使用同一个HTML片段的代码
Mar 04 Javascript
javascript实现二级级联菜单的简单制作
Nov 19 Javascript
javascript定义类和类的实现实例详解
Dec 01 Javascript
表单input项使用label同时引用Bootstrap库导致input点击效果区增大问题
Oct 11 Javascript
浅析JavaScript的几种Math函数,random(),ceil(),round(),floor()
Dec 22 Javascript
Bootstrap中datetimepicker使用小结
Dec 28 Javascript
解决vue项目nginx部署到非根目录下刷新空白的问题
Sep 27 Javascript
mpvue实现小程序签到金币掉落动画(api实现)
Oct 17 Javascript
在微信小程序中使用mqtt服务的方法
Dec 13 Javascript
vue开发中遇到的问题总结
Apr 07 Javascript
微信小程序保存图片到相册权限设置
Apr 09 Javascript
JavaScript检测上传文件大小的方法
Jul 22 #Javascript
JavaScript动态改变div属性的实现方法
Jul 22 #Javascript
PHP结合jQuery实现的评论顶、踩功能
Jul 22 #Javascript
PHP结合jQuery实现红蓝投票功能特效
Jul 22 #Javascript
用Move.js配合创建CSS3动画的入门指引
Jul 22 #Javascript
js判断手机端(Android手机还是iPhone手机)
Jul 22 #Javascript
javascript实现网页屏蔽Backspace事件,输入框不屏蔽
Jul 21 #Javascript
You might like
PHP,ASP.JAVA,JAVA代码格式化工具整理
2010/06/15 PHP
fleaphp常用方法分页之Pager使用方法
2011/04/23 PHP
PHP向浏览器输出内容的4个函数总结
2014/11/17 PHP
php生成PDF格式文件并且加密
2015/06/22 PHP
简单实现php上传文件功能
2017/09/21 PHP
Javascript结合css实现网页换肤功能
2009/11/02 Javascript
JS获取农历日期具体实例
2013/11/14 Javascript
javascript修改IMG标签的src问题
2014/03/28 Javascript
javascript中JSON对象与JSON字符串相互转换实例
2015/07/11 Javascript
JS实现仿新浪微博发布内容为空时提示功能代码
2015/08/19 Javascript
javascript每日必学之多态
2016/02/23 Javascript
微信小程序 连续旋转动画(this.animation.rotate)详解
2017/04/07 Javascript
微信小程序冒泡事件及其阻止方法实例分析
2018/12/06 Javascript
使用vue实现各类弹出框组件
2019/07/03 Javascript
Vue实现可移动水平时间轴
2020/06/29 Javascript
js实现三角形粒子运动
2020/09/22 Javascript
[01:30:54]《加油DOTA》 第三期
2014/08/18 DOTA
[01:29:17]RNG vs Liquid 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.23
2019/09/05 DOTA
[01:18:45]DOTA2-DPC中国联赛 正赛 DLG vs Dragon BO3 第三场2月1日
2021/03/11 DOTA
[04:45]DOTA2-DPC中国联赛正赛 iG vs LBZS 赛后选手采访
2021/03/11 DOTA
python通过wxPython打开一个音频文件并播放的方法
2015/03/25 Python
python使用calendar输出指定年份全年日历的方法
2015/04/04 Python
Python lambda函数基本用法实例分析
2018/03/16 Python
Python爬虫之pandas基本安装与使用方法示例
2018/08/08 Python
python issubclass 和 isinstance函数
2019/07/25 Python
wxpython实现按钮切换界面的方法
2019/11/19 Python
Python selenium抓取虎牙短视频代码实例
2020/03/02 Python
Python中的面向接口编程示例详解
2021/01/17 Python
计算机专业推荐信范文
2013/11/27 职场文书
工作违纪检讨书
2014/02/17 职场文书
教学评估实施方案
2014/03/16 职场文书
三八节主持词
2014/03/17 职场文书
酒店圣诞节活动总结
2015/05/06 职场文书
我的中国梦主题班会
2015/08/14 职场文书
《称赞》教学反思
2016/02/17 职场文书
从QQtabBar看css命名规范BEM的详细介绍
2021/08/07 HTML / CSS