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 相关文章推荐
在IE上直接编辑网页内容的js代码(IE地址栏js)
Apr 27 Javascript
JavaScript 继承机制的实现(待续)
May 18 Javascript
JS维吉尼亚密码算法实现代码
Nov 09 Javascript
jquery 追加tr和删除tr示例代码
Sep 12 Javascript
jQuery插件StickUp实现网页导航置顶
Apr 12 Javascript
Bootstrap3制作自己的导航栏
May 12 Javascript
微信小程序 下拉列表的实现实例代码
Mar 08 Javascript
socket.io学习教程之基本应用(二)
Apr 29 Javascript
jquery 键盘事件的使用方法详解
Sep 13 jQuery
浅析JavaScript中的特殊数据类型
Dec 15 Javascript
vue axios请求拦截实例代码
Mar 29 Javascript
在vue中使用Autoprefixed的方法
Jul 27 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加MYSQL服务器
2006/10/09 PHP
PHP的SQL注入过程分析
2012/01/06 PHP
基于PHP对XML的操作详解
2013/06/07 PHP
php查看请求头信息获取远程图片大小的方法分享
2013/12/25 PHP
汇总PHPmailer群发Gmail的常见问题
2016/02/24 PHP
用Mootools获得操作索引的两种方法分享
2011/12/12 Javascript
javascript date格式化示例
2013/09/25 Javascript
javascript 实现字符串反转的三种方法
2013/11/23 Javascript
解决jquery插件冲突的问题
2014/01/23 Javascript
JS方法调用括号的问题探讨
2014/01/24 Javascript
IE8下Jquery获取select选中的值post到后台报错问题
2014/07/02 Javascript
原生Ajax 和jQuery Ajax的区别示例分析
2014/12/17 Javascript
jquery简单实现网页层的展开与收缩效果
2015/08/07 Javascript
JS截取字符串实例详解
2015/11/24 Javascript
针对JavaScript中this指向的简单理解
2016/08/26 Javascript
AngularJs expression详解及简单示例
2016/09/01 Javascript
Bootstrap table使用方法详细介绍
2016/12/09 Javascript
Vuex之理解state的用法实例
2017/04/19 Javascript
手写Node静态资源服务器的实现方法
2018/03/20 Javascript
详解vue项目中使用token的身份验证的简单实践
2019/03/08 Javascript
Layui tree 下拉菜单树的实例代码
2019/09/21 Javascript
Python实现把utf-8格式的文件转换成gbk格式的文件
2015/01/22 Python
用map函数来完成Python并行任务的简单示例
2015/04/02 Python
简单介绍Python中的JSON使用
2015/04/28 Python
python生成器表达式和列表解析
2016/03/10 Python
机器学习经典算法-logistic回归代码详解
2017/12/22 Python
手把手教你用python抢票回家过年(代码简单)
2018/01/21 Python
python pandas中DataFrame类型数据操作函数的方法
2018/04/08 Python
python版opencv摄像头人脸实时检测方法
2018/08/03 Python
使用python制作一个解压缩软件
2019/11/13 Python
解决Python3.8运行tornado项目报NotImplementedError错误
2020/09/02 Python
CSS3实战第一波 让我们尽情的圆角吧
2010/08/27 HTML / CSS
汽车技术服务与营销专业在籍生自荐信
2013/09/28 职场文书
大学生学习2014全国两会心得体会
2014/03/13 职场文书
建筑专业毕业生求职信
2014/09/30 职场文书
机器人总动员观后感
2015/06/09 职场文书