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 相关文章推荐
onpropertypchange
Jul 01 Javascript
Extjs Ext.MessageBox.confirm 确认对话框详解
Apr 02 Javascript
基于SVG的web页面图形绘制API介绍及编程演示
Jun 28 Javascript
javascript操作数组详解
Dec 17 Javascript
javascript 数组操作详解
Jan 29 Javascript
JavaScript点击按钮后弹出透明浮动层的方法
May 11 Javascript
javascript获取select值的方法分析
Jul 02 Javascript
使用jquery给新生的th绑定hover事件的实例
Feb 10 Javascript
详解vuex的简单使用
Mar 12 Javascript
详解Vue CLI3配置之filenameHashing使用和源码设计使用和源码设计
Aug 31 Javascript
详解Vue后台管理系统开发日常总结(组件PageHeader)
Nov 01 Javascript
Vue-router 报错NavigationDuplicated的解决方法
Mar 31 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 Cookie的使用教程详解
2013/06/03 PHP
控制PHP的输出:缓存并压缩动态页面
2013/06/11 PHP
Yii配置文件用法详解
2014/12/04 PHP
PHP+Apache+Mysql环境搭建教程
2016/08/01 PHP
PHP 图片处理
2020/09/16 PHP
用ASP将SQL搜索出来的内容导出为TXT的代码
2007/07/27 Javascript
js下获得客户端操作系统的函数代码(1:vista,2:windows7,3:2000,4:xp,5:2003,6:2008)
2011/10/31 Javascript
javascript图片相似度算法实现 js实现直方图和向量算法
2014/01/14 Javascript
JavaScript中的变量定义与储存介绍
2014/12/31 Javascript
AngualrJS中每次$http请求时的一个遮罩层Directive
2016/01/26 Javascript
jQuery扩展实现text提示还能输入多少字节的方法
2016/11/28 Javascript
html5+CSS 实现禁止IOS长按复制粘贴功能
2016/12/28 Javascript
浅谈vue自定义全局组件并通过全局方法 Vue.use() 使用该组件
2017/12/07 Javascript
JavaScript实现JSON合并操作示例【递归深度合并】
2018/09/07 Javascript
浅谈JS的原型和继承
2019/05/08 Javascript
微信小程序分包加载代码实现方法详解
2019/09/23 Javascript
[00:33]2016完美“圣”典风云人物:BurNIng宣传片
2016/12/10 DOTA
python查找第k小元素代码分享
2013/12/18 Python
Python写的一个简单DNS服务器实例
2014/06/04 Python
Django中几种重定向方法
2015/04/28 Python
python使用Matplotlib绘制分段函数
2018/09/25 Python
Python数据类型之Set集合实例详解
2019/05/07 Python
Python爬取视频(其实是一篇福利)过程解析
2019/08/01 Python
python系列 文件操作的代码
2019/10/06 Python
python jenkins 打包构建代码的示例代码
2019/11/29 Python
80年代复古T恤:TruffleShuffle
2018/07/02 全球购物
Java和Javasciprt的区别
2012/09/02 面试题
军训的自我鉴定
2013/12/10 职场文书
计算机专业毕业生求职信分享
2013/12/24 职场文书
医学类个人求职信范文
2014/02/05 职场文书
群众路线党员自我评议范文2014
2014/09/24 职场文书
县政府领导班子四风问题对照检查材料思想汇报
2014/09/26 职场文书
人事聘任通知
2015/04/21 职场文书
看上去很美观后感
2015/06/10 职场文书
python3 删除所有自定义变量的操作
2021/04/08 Python
详解apache编译安装httpd-2.4.54及三种风格的init程序特点和区别
2022/07/15 Servers