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 相关文章推荐
推荐10个超棒的jQuery工具提示插件
Oct 11 Javascript
JQuery中关于jquery.js与jquery.min.js的比较探讨
May 15 Javascript
javascript中slice(),splice(),split(),substring(),substr()使用方法
Mar 13 Javascript
js+html5实现可在手机上玩的拼图游戏
Jul 17 Javascript
JS实现的页面自定义滚动条效果
Oct 26 Javascript
全面了解addEventListener和on的区别
Jul 14 Javascript
koa上传excel文件并解析的实现方法
Aug 09 Javascript
实现高性能javascript的注意事项
May 27 Javascript
vue图片加载失败时用默认图片替换的方法
Aug 29 Javascript
jquery 键盘事件 keypress() keydown() keyup()用法总结
Oct 23 jQuery
Vue 实现把表单form数据 转化成json格式的数据
Oct 29 Javascript
javascript中contains是否包含功能实现代码(扩展字符、数组、dom)
Apr 07 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
DedeCMS 核心类TypeLink.class.php摘要笔记
2010/04/07 PHP
php快速url重写更新版[需php 5.30以上]
2010/04/25 PHP
php摘要生成函数(无乱码)
2012/02/04 PHP
yii 框架实现按天,月,年,自定义时间段统计数据的方法分析
2020/04/04 PHP
PHP 裁剪图片
2021/03/09 PHP
js中将多个语句写成一个语句的两种方法小结
2007/12/08 Javascript
js showModalDialog弹出窗口实例详解
2014/01/07 Javascript
JavaScript判断用户是否对表单进行了修改的方法
2015/03/18 Javascript
javascript获取select标签选中的值
2016/06/04 Javascript
jQuery使用animate实现ul列表项相互飘动效果示例
2016/09/16 Javascript
jQuery中Nicescroll滚动条插件的用法
2016/11/10 Javascript
vue 计时器组件的实现代码
2017/09/14 Javascript
Vue 让元素抖动/摆动起来的实现代码
2018/05/31 Javascript
vue中动态设置meta标签和title标签的方法
2018/07/11 Javascript
JavaScript中AOP的实现与应用
2019/05/06 Javascript
Bootstrap table 实现树形表格联动选中联动取消功能
2019/09/30 Javascript
python文件操作整理汇总
2014/10/21 Python
Python实现遍历数据库并获取key的值
2015/05/17 Python
python rsa 加密解密
2017/03/20 Python
详解如何设置Python环境变量?
2019/05/13 Python
flask框架自定义url转换器操作详解
2020/01/25 Python
Python尾递归优化实现代码及原理详解
2020/10/09 Python
html2canvas截图空白问题的解决
2020/03/24 HTML / CSS
欧洲品牌瓷器餐具网上商店:Porzellantreff.de
2018/04/04 全球购物
英国助听器购物网站:Hearing Direct
2018/08/21 全球购物
阿里巴巴Oracle DBA笔试题答案-备份恢复类
2013/11/20 面试题
英语系毕业生自荐信
2013/10/31 职场文书
网络专业学生个人的自我评价
2013/12/16 职场文书
2014市府办领导班子“四风问题”对照检查材料思想汇报
2014/09/24 职场文书
作风转变年心得体会
2014/10/22 职场文书
通报表扬范文
2015/01/17 职场文书
2016关于军训的心得体会
2016/01/11 职场文书
竞选稿之小学班干部
2019/10/31 职场文书
解决Golang中goroutine执行速度的问题
2021/05/02 Golang
spring项目中切面及AOP的使用方法
2021/06/26 Java/Android
在CSS中使用when/else的方法
2022/01/18 HTML / CSS