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事件串连执行多个处理过程的方法
Mar 09 Javascript
childNodes.length与children.length的区别
May 14 Javascript
关于JavaScript的with 语句的使用方法
May 09 Javascript
javascript类型转换使用方法
Feb 08 Javascript
jquery实现加载进度条提示效果
Nov 23 Javascript
javascript执行环境及作用域详解
May 05 Javascript
Node.js环境下JavaScript实现单链表与双链表结构
Jun 12 Javascript
AngularJS Ajax详解及示例代码
Aug 17 Javascript
jQuery+json实现动态创建复杂表格table的方法
Oct 25 Javascript
使用JavaScript破解web
Sep 28 Javascript
js中let能否完全替代IIFE
Jun 15 Javascript
详解vue微信网页授权最终解决方案
Jun 16 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 ci框架中加载css和js文件失败的解决方法
2014/03/03 PHP
php+mysqli事务控制实现银行转账实例
2015/01/29 PHP
PHP使用mkdir创建多级目录的方法
2015/12/22 PHP
Yii多表联合查询操作详解
2016/06/02 PHP
php判断用户是否关注微信公众号
2016/07/22 PHP
PHP函数rtrim()使用中的怪异现象分析
2017/02/24 PHP
PHP实现微信小程序人脸识别刷脸登录功能
2018/05/24 PHP
javascript学习之闭包分析
2010/12/02 Javascript
解决Extjs上传图片无法预览的解决方法
2012/03/22 Javascript
JavaScript中:表达式和语句的区别[译]
2012/09/17 Javascript
jquery用get实现ajax在ie里面刷新不进入后台解决方法
2013/08/12 Javascript
require.js的用法详解
2015/10/20 Javascript
全面解析Bootstrap表单使用方法(表单按钮)
2015/11/24 Javascript
JavaScript遍历Json串浏览器输出的结果不统一问题
2016/11/03 Javascript
nodejs实现的连接MySQL数据库功能示例
2018/01/25 NodeJs
详解Vue2.0组件的继承与扩展
2018/11/23 Javascript
VUE动态生成word的实现
2020/07/26 Javascript
python二分法实现实例
2013/11/21 Python
Python挑选文件夹里宽大于300图片的方法
2015/03/05 Python
Python中的defaultdict与__missing__()使用介绍
2018/02/03 Python
python查找指定文件夹下所有文件并按修改时间倒序排列的方法
2018/10/21 Python
python简单贪吃蛇开发
2019/01/28 Python
Python数据类型之Dict字典实例详解
2019/05/07 Python
python中利用numpy.array()实现俩个数值列表的对应相加方法
2019/08/26 Python
pygame实现贪吃蛇游戏(下)
2019/10/29 Python
美国在线家装零售商:Build.com
2016/09/02 全球购物
求职简历中个人的自我评价
2013/12/01 职场文书
一年级数学教学反思
2014/02/01 职场文书
中餐厅主管的职责范文
2014/02/04 职场文书
青奥会口号
2014/06/12 职场文书
电子商务优秀毕业生求职信
2014/07/11 职场文书
党员干部对十八届四中全会的期盼
2014/10/17 职场文书
敲诈同学钱财检讨书范文
2014/11/18 职场文书
校本培训个人总结
2015/02/28 职场文书
2015年小学生自我评价范文
2015/03/03 职场文书
初一语文教学反思
2016/03/03 职场文书