JS随即打乱数组实现代码


Posted in Javascript onDecember 03, 2012

这个方法是我见过对高效的。

var arr=[]; 
for(var i=0;i<100;i++){ 
arr[i]=i; 
} 
arr.sort(function(){ return 0.5 - Math.random() }) 
var str=arr.join(); 
alert(str);

代码解释:
var arr=[];//新建一个数组 这是大家推荐的方式。//而不推荐使用 var arr=new Array();
这句不用解释了。
for(var i=0;i<100;i++){ arr[i]=i; }//循环给数组赋值
关键第地方来了
代码 
arr.sort(function(){ return 0.5 - Math.random() }) 
//sort 是对数组进行排序 
//他的是这样工作的。每次从数组里面挑选两个数 进行运算。 
//如果传入的参数是0 两个数位置不变。 
//如果参数小于0 就交换位置 
//如果参数大于0就不交换位置 
//接下来用刚才的较大数字跟下一个进行比较。这样循环进行排序。 
/*恰好。我们利用了这一点使用了0.5 - Math.random 这个运算的结果要么是大于0,要么是小于0.这样要么交换位置,要么不交换位置。当然大于或者小于0是随即出现的。所以数组就被随即排序了。*/

后面两句输出给你看的。呵呵。
Javascript 相关文章推荐
javascript处理table表格的代码
Dec 06 Javascript
2014 HTML5/CSS3热门动画特效TOP10
Dec 07 Javascript
node.js中的fs.readdirSync方法使用说明
Dec 17 Javascript
CSS3实现动态背景登录框的代码
Jul 28 Javascript
Bootstrap每天必学之按钮(Button)插件
Apr 25 Javascript
JS留言功能的简单实现案例(推荐)
Jun 23 Javascript
js实现键盘自动打字效果
Dec 23 Javascript
angular 基于ng-messages的表单验证实例
May 04 Javascript
彻底弄懂 JavaScript 执行机制
Oct 23 Javascript
vue实现将数据存入vuex中以及从vuex中取出数据
Nov 08 Javascript
微信小程序分享小程序码的生成(带参数)以及参数的获取
Mar 25 Javascript
原生小程序封装跑马灯效果
Oct 21 Javascript
JS图片预加载 JS实现图片预加载应用
Dec 03 #Javascript
输入密码检测大写是否锁定js实现代码
Dec 03 #Javascript
js操作textarea 常用方法总结
Dec 03 #Javascript
javascript object array方法使用详解
Dec 03 #Javascript
让AJAX不依赖后端接口实现方案
Dec 03 #Javascript
Javascript在IE和FireFox中的不同表现简析
Dec 03 #Javascript
js+JQuery返回顶部功能如何实现
Dec 03 #Javascript
You might like
php面向对象全攻略 (七) 继承性
2009/09/30 PHP
php cli模式学习(PHP命令行模式)
2013/06/03 PHP
PHP文件上传主要代码讲解
2013/09/30 PHP
php判断电脑访问、手机访问的例子
2014/05/10 PHP
PHP实现把文本中的URL转换为链接的auolink()函数分享
2014/07/29 PHP
php封装实现钉钉机器人报警接口的示例代码
2020/08/08 PHP
JS按字节截取字符长度实例
2013/11/20 Javascript
js 3秒后跳转页面的实现代码
2014/03/10 Javascript
js获取url中的参数且参数为中文时通过js解码
2014/03/19 Javascript
JavaScript通过元素的ID和name设置样式
2014/07/08 Javascript
老生常谈JavaScript 函数表达式
2016/09/01 Javascript
vue自定义指令实现v-tap插件
2016/11/03 Javascript
Nodejs进阶:核心模块net入门学习与实例讲解
2016/11/21 NodeJs
node.js + socket.io 实现点对点随机匹配聊天
2017/06/30 Javascript
vue2中filter()的实现代码
2017/07/09 Javascript
详解vue-cli 构建Vue项目遇到的坑
2017/08/30 Javascript
JavaScript实现多态和继承的封装操作示例
2018/08/20 Javascript
微信小程序实现星星评价效果
2018/11/02 Javascript
200行HTML+JavaScript实现年会抽奖程序
2019/01/22 Javascript
jQuery事件委托代码实践详解
2019/06/21 jQuery
Angular 中使用 FineReport不显示报表直接打印预览
2019/08/21 Javascript
Vue3为什么这么快
2020/09/23 Javascript
[42:32]完美世界DOTA2联赛循环赛 Magma vs PXG BO2第二场 10.28
2020/10/28 DOTA
Python的Django框架中消息通知的计数器实现教程
2016/06/13 Python
Python-copy()与deepcopy()区别详解
2019/07/12 Python
在pycharm中关掉ipython console/PyDev操作
2020/06/09 Python
使用python实现名片管理系统
2020/06/18 Python
可爱的童装和鞋子:Fabkids
2019/08/16 全球购物
令人啧啧称赞的经理推荐信
2013/11/07 职场文书
三八妇女节活动主持词
2014/03/17 职场文书
幼儿园家长安全责任书
2014/07/22 职场文书
党员学习中共十八大报告思想汇报
2014/09/15 职场文书
投资公司董事长岗位职责
2015/04/16 职场文书
大学生实习介绍信
2015/05/05 职场文书
2016元旦晚会主持词
2015/07/01 职场文书
Jsonp劫持学习
2021/04/01 PHP