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 CSS 修改学习第四章 透明度设置
Feb 19 Javascript
javascript结合Canvas 实现简易的圆形时钟
Mar 11 Javascript
js实现跨域的4种实用方法原理分析
Oct 29 Javascript
js实现动态加载脚本的方法实例汇总
Nov 02 Javascript
canvas 画布在主流浏览器中的尺寸限制详细介绍
Dec 15 Javascript
微信小程序实现图片预加载组件
Jan 18 Javascript
JS实现上传图片的三种方法并实现预览图片功能
Jul 14 Javascript
前端天气插件tpwidget使用方法详解
Jun 24 Javascript
微信小程序按钮点击动画效果的实现
Sep 04 Javascript
JS插入排序简单理解与实现方法分析
Nov 25 Javascript
JavaScript中的函数式编程详解
Aug 22 Javascript
如何用JS实现网页瀑布流布局
Apr 24 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 文件下载 出现下载文件内容乱码损坏的解决方法(推荐)
2016/11/16 PHP
ThinkPHP5.1的权限控制怎么写?分享一个AUTH权限控制
2021/03/09 PHP
jquery animate实现鼠标放上去显示离开隐藏效果
2013/07/21 Javascript
一个字符串反转函数可实现字符串倒序
2014/09/15 Javascript
JS模仿腾讯图片站的图片翻页按钮效果完整实例
2016/06/21 Javascript
angularJs关于指令的一些冷门属性详解
2016/10/24 Javascript
vue.js实现表格合并示例代码
2016/11/30 Javascript
JS生成一维码(条形码)功能示例
2017/01/19 Javascript
js-FCC算法-No repeats please字符串的全排列(详解)
2017/05/02 Javascript
JS实现批量上传文件并显示进度功能
2017/06/27 Javascript
Angular.js自动化测试之protractor详解
2017/07/07 Javascript
Vue中的数据监听和数据交互案例解析
2017/07/12 Javascript
AngularJS中scope的绑定策略实例分析
2017/10/30 Javascript
Vue.js分页组件实现:diVuePagination的使用详解
2018/01/10 Javascript
JS实现生成由字母与数字组合的随机字符串功能详解
2018/05/25 Javascript
基于Vue 实现一个中规中矩loading组件
2019/04/03 Javascript
使用vue脚手架(vue-cli)搭建一个项目详解
2019/05/09 Javascript
layui.use模块外部使用其内部定义的js封装函数方法
2019/09/16 Javascript
vue配置nprogress实现页面顶部进度条
2019/09/21 Javascript
JavaScript中使用Spread运算符的八种方法总结
2020/06/18 Javascript
Python 12306抢火车票脚本 Python京东抢手机脚本
2018/02/06 Python
python3 遍历删除特定后缀名文件的方法
2018/04/23 Python
Python中的heapq模块源码详析
2019/01/08 Python
Python操作SQLite/MySQL/LMDB数据库的方法
2019/11/07 Python
Python实现敏感词过滤的4种方法
2020/09/12 Python
HTML5+CSS3 实现灵动的动画 TAB 切换效果(DEMO)
2017/09/15 HTML / CSS
塔吉特百货公司官网:Target
2017/04/27 全球购物
美国最大的户外装备和服装购物网站:Backcountry
2019/10/15 全球购物
转党组织关系介绍信
2014/01/08 职场文书
运动会通讯稿150字
2014/02/15 职场文书
运动会开幕式主持词
2014/03/28 职场文书
2014年国庆节活动总结
2014/08/26 职场文书
党的群众路线教育实践活动对照检查材料
2014/09/22 职场文书
优秀党员个人总结
2015/02/14 职场文书
2019年汽车租赁合同范本!
2019/08/12 职场文书
pytorch 实现在测试的时候启用dropout
2021/05/27 Python