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 相关文章推荐
一个tab标签切换效果代码
Mar 27 Javascript
Extjs ajax同步请求时post方式参数发送方式
Aug 05 Javascript
JS代码放在head和body中的区别分析
Dec 01 Javascript
让js弹出窗口居前显示的实现方法
Jul 10 Javascript
JavaScript中的toUTCString()方法使用详解
Jun 12 Javascript
JS实现三级折叠菜单特效,其它级可自动收缩
Aug 06 Javascript
jQuery绑定事件on()与弹窗的简要概述
Apr 27 Javascript
详解Angular 自定义结构指令
Jun 21 Javascript
js实现点击按钮复制文本功能
Jul 20 Javascript
JavaScript中toLocaleString()和toString()的区别实例分析
Aug 14 Javascript
JQuery获得内容和属性方法解析
May 30 jQuery
Vue Element plus使用方法梳理
Dec 24 Vue.js
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
2020年4月新番动漫目录 官方宣布4月播出的作品一览
2020/03/08 日漫
php array_filter除去数组中的空字符元素
2020/06/21 PHP
浅析PHP中Collection 类的设计
2013/06/21 PHP
php中magic_quotes_gpc对unserialize的影响分析
2014/12/16 PHP
php实现格式化多行文本为Js可用格式
2015/04/15 PHP
PHP CURL与java http使用方法详解
2018/01/26 PHP
php web环境和命令行环境下查找php.ini的位置
2019/07/17 PHP
laravel框架模型中非静态方法也能静态调用的原理分析
2019/11/23 PHP
什么是JavaScript
2009/08/13 Javascript
jquery实现表单验证并阻止非法提交
2015/07/09 Javascript
JavaScript实现网站访问次数统计代码
2015/08/12 Javascript
通过jquery-ui中的sortable来实现拖拽排序的简单实例
2016/05/24 Javascript
使用Angular.js开发的注意事项
2016/10/19 Javascript
vue2 自定义动态组件所遇到的问题
2017/06/08 Javascript
详解jquery选择器的原理
2017/08/01 jQuery
three.js实现3D影院的原理的代码分析
2017/12/18 Javascript
使用mint-ui实现省市区三级联动效果的示例代码
2018/02/09 Javascript
JavaScript实现简单的隐藏式侧边栏功能示例
2018/08/31 Javascript
关于vue.js中实现方法内某些代码延时执行
2019/11/14 Javascript
jQuery弹框插件使用方法详解
2020/05/26 jQuery
Threejs实现滴滴官网首页地球动画功能
2020/07/13 Javascript
Element Steps步骤条的使用方法
2020/07/26 Javascript
python实现划词翻译
2020/04/23 Python
python分析作业提交情况
2017/11/22 Python
Python自定义简单图轴简单实例
2018/01/08 Python
python中shell执行知识点
2020/05/06 Python
Python字符串的15个基本操作(小结)
2021/02/03 Python
对pytorch中x = x.view(x.size(0), -1) 的理解说明
2021/03/03 Python
Ray-Ban雷朋瑞典官方网站:全球领先的太阳眼镜品牌
2019/08/22 全球购物
如果NULL定义成#define NULL((char *)0)难道不就可以向函数传入不加转换的NULL了吗
2012/02/15 面试题
外语系毕业生自荐信范文
2013/12/16 职场文书
十一酒店活动方案
2014/02/20 职场文书
红灯733-1型14管5波段半导体收音机
2021/04/22 无线电
gateway与spring-boot-starter-web冲突问题的解决
2021/07/16 Java/Android
剧场版《转生恶役只好拔除破灭旗标》公开最新视觉图 2023年上映
2022/04/02 日漫
Python中生成随机数据安全性、多功能性、用途和速度方面进行比较
2022/04/14 Python