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 相关文章推荐
匹配任意字符的正则表达式写法
Apr 29 Javascript
JavaScript中操作Mysql数据库实例
Apr 02 Javascript
jQuery表格插件datatables用法汇总
Mar 29 Javascript
Bootstrap幻灯片轮播图支持触屏左右手势滑动的实现方法
Oct 13 Javascript
js Canvas绘制圆形时钟效果
Feb 17 Javascript
分享Bootstrap简单表格、表单、登录页面
Aug 04 Javascript
jQuery实现基本动画效果的方法详解
Sep 06 jQuery
Vue CLI3 开启gzip压缩文件的方式
Sep 30 Javascript
浅谈Vue项目骨架屏注入实践
Aug 05 Javascript
vue 解决数组赋值无法渲染在页面的问题
Oct 28 Javascript
Vue用mixin合并重复代码的实现
Nov 27 Vue.js
javascript实现点击产生随机图形
Jan 25 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实现执行某一操作时弹出确认、取消对话框
2013/12/30 PHP
php实现的递归提成方案实例
2015/11/14 PHP
在WordPress中使用PHP脚本来判断访客来自什么国家
2015/12/10 PHP
CodeIgniter框架钩子机制实现方法【hooks类】
2018/08/21 PHP
jQuery 自动增长的文本输入框实现代码
2010/04/02 Javascript
文本框中,回车键触发事件的js代码[多浏览器兼容]
2010/06/07 Javascript
javascript 文件的同步加载与异步加载实现原理
2012/12/13 Javascript
让html页面不缓存js的实现方法
2014/10/31 Javascript
Jquery ajax请求导出Excel表格的实现代码
2016/06/08 Javascript
Bootstrap模态框禁用空白处点击关闭
2016/10/20 Javascript
关于vue中的ajax请求和axios包问题
2018/04/19 Javascript
vue中子组件调用兄弟组件方法
2018/07/06 Javascript
webpack+vue-cil中proxyTable处理跨域的方法
2018/07/20 Javascript
jQuery模拟html下拉多选框的原生实现方法示例
2019/05/30 jQuery
python回调函数中使用多线程的方法
2017/12/25 Python
通过python爬虫赚钱的方法
2019/01/29 Python
Python之Numpy的超实用基础详细教程
2019/10/23 Python
Python selenium抓取虎牙短视频代码实例
2020/03/02 Python
css3实现超炫风车特效
2014/11/12 HTML / CSS
使用html5+css3来实现slider切换效果告别javascript+css
2013/01/08 HTML / CSS
机电一体化专业应届本科生求职信
2013/09/27 职场文书
打架检讨书500字
2014/01/29 职场文书
《孔子游春》教学反思
2014/02/25 职场文书
合作意向书模板
2014/03/31 职场文书
员工考核评语大全
2014/04/26 职场文书
授权委托书怎么写
2014/09/25 职场文书
湖南省党的群众路线教育实践活动总结会议新闻稿
2014/10/21 职场文书
小学见习报告
2014/10/31 职场文书
2014年个人技术工作总结
2014/12/08 职场文书
毕业论文指导教师评语
2014/12/30 职场文书
团员年度个人总结
2015/02/26 职场文书
机关单位2016年法制宣传日活动总结
2016/04/01 职场文书
vue+element ui实现锚点定位
2021/06/29 Vue.js
JavaScript组合继承详解
2021/11/07 Javascript
Python进程间的通信之语法学习
2022/04/11 Python
Nginx 502 bad gateway错误解决的九种方案及原因
2022/08/14 Servers