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 相关文章推荐
juqery 学习之五 文档处理 插入
Feb 11 Javascript
JAVASCRIPT车架号识别/验证函数代码 汽车车架号验证程序
Jan 08 Javascript
查看图片(前进后退)功能实现js代码
Apr 24 Javascript
jquery easyui使用心得
Jul 07 Javascript
创建自己的jquery表格插件
Nov 25 Javascript
AngularJS数据源的多种获取方式汇总
Feb 02 Javascript
jQuery图片轮播实现并封装(一)
Dec 03 Javascript
记一次vue去除#问题处理经过小结
Jan 24 Javascript
Electron vue的使用教程图文详解
Jul 05 Javascript
vue+elementui实现点击table中的单元格触发事件--弹框
Jul 18 Javascript
解决vue动态路由异步加载import组件,加载不到module的问题
Jul 26 Javascript
vue 导航菜单刷新状态不消失,显示对应的路由界面操作
Aug 06 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
ThinkPHP中Session用法详解
2014/11/29 PHP
PHP通过API获取手机号码归属地
2015/05/28 PHP
thinkPHP5.0框架独立配置与动态配置方法
2017/03/17 PHP
Redis在Laravel项目中的应用实例详解
2017/08/11 PHP
PHP实现基于3DES算法加密解密字符串示例
2018/08/24 PHP
bgsound 背景音乐 的一些常用方法及特殊用法小结
2010/05/11 Javascript
js实现幻灯片效果(基于jquery插件)
2013/11/05 Javascript
setTimeout()与setInterval()方法区别介绍
2013/12/24 Javascript
禁止页面刷新让F5快捷键及右键都无效
2014/01/22 Javascript
jQuery scrollFix滚动定位插件
2015/04/01 Javascript
javascript实现简单的html5视频播放器
2015/05/06 Javascript
jQuery AjaxUpload 上传图片代码
2016/02/02 Javascript
微信小程序自定义底部弹出框
2020/11/16 Javascript
微信小程序实现slideUp、slideDown滑动效果及点击空白隐藏功能示例
2018/12/11 Javascript
Vue实战教程之仿肯德基宅急送App
2019/07/19 Javascript
HTML+JavaScript实现扫雷小游戏
2019/09/30 Javascript
JavaScript Blob对象原理及用法详解
2020/10/14 Javascript
python正则表达式抓取成语网站
2013/11/20 Python
python实现百度关键词排名查询
2014/03/30 Python
Python的设计模式编程入门指南
2015/04/02 Python
Python读写文件方法总结
2015/06/09 Python
Python处理CSV与List的转换方法
2018/04/19 Python
在pycharm中使用git版本管理以及同步github的方法
2019/01/16 Python
python使用phoenixdb操作hbase的方法示例
2019/02/28 Python
Python OpenCV图像指定区域裁剪的实现
2019/10/30 Python
django使用xadmin的全局配置详解
2019/11/15 Python
Pytorch使用MNIST数据集实现CGAN和生成指定的数字方式
2020/01/10 Python
Python使用Matlab命令过程解析
2020/06/04 Python
浅析border-radius如何兼容IE
2016/04/19 HTML / CSS
Lululemon加拿大官网:加拿大知名体育服装零售商
2019/04/12 全球购物
教师实习的自我鉴定
2013/10/26 职场文书
高中生家长会演讲稿
2014/01/14 职场文书
青蓝工程实施方案
2014/03/27 职场文书
意向书范文
2014/03/31 职场文书
Navicat连接MySQL错误描述分析
2021/06/02 MySQL
tomcat下部署jenkins的方法
2022/05/06 Servers