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 相关文章推荐
IE和firefox浏览器的event事件兼容性汇总
Dec 06 Javascript
Jquery乱码的一次解决过程 图解教程
Feb 20 Javascript
如何确保JavaScript的执行顺序 之实战篇
Mar 03 Javascript
js实现滑动触屏事件监听的方法
May 05 Javascript
举例讲解AngularJS中的模块
Jun 17 Javascript
JavaScript实现点击按钮直接打印
Jan 06 Javascript
喜大普奔!jQuery发布 3.0 最终版
Jun 12 Javascript
Bootstrap栅格系统的使用和理解2
Dec 14 Javascript
jquery拖动改变div大小
Jul 04 jQuery
JavaScript创建对象的七种方式全面总结
Aug 21 Javascript
解决Vue在封装了Axios后手动刷新页面拦截器无效的问题
Nov 08 Javascript
Vue.js中的组件系统
May 30 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
浅析is_writable的php实现
2013/06/18 PHP
php实现微信公众号企业转账功能
2018/10/01 PHP
JavaScript 乱码问题
2009/08/06 Javascript
jQuery学习笔记 操作jQuery对象 文档处理
2012/09/19 Javascript
JS设置网页图片vspace和hspace属性的方法
2015/04/01 Javascript
浅析jQuery 遍历函数,javascript中的each遍历
2016/05/25 Javascript
JavaScript作用域示例详解
2016/07/07 Javascript
微信小程序 前端源码逻辑和工作流详解
2016/10/08 Javascript
基于jQuery实现Tabs选项卡自定义插件
2016/11/21 Javascript
jQuery元素选择器实例代码
2017/02/06 Javascript
Bootstrap table学习笔记(2) 前后端分页模糊查询
2017/05/18 Javascript
angular 实现同步验证器跨字段验证的方法
2019/04/11 Javascript
JS中的算法与数据结构之列表(List)实例详解
2019/08/16 Javascript
vue中监听返回键问题
2019/08/28 Javascript
详解JavaScript中分解数字的三种方法
2021/01/05 Javascript
Python  __getattr__与__setattr__使用方法
2008/09/06 Python
Python中DJANGO简单测试实例
2015/05/11 Python
python实现的AES双向对称加密解密与用法分析
2017/05/02 Python
用Python实现数据的透视表的方法
2018/11/16 Python
selenium3+python3环境搭建教程图解
2018/12/07 Python
Python 一键制作微信好友图片墙的方法
2019/05/16 Python
华为2019校招笔试题之处理字符串(python版)
2019/06/25 Python
如何通过python的fabric包完成代码上传部署
2019/07/29 Python
Python 词典(Dict) 加载与保存示例
2019/12/06 Python
python几种常用功能实现代码实例
2019/12/25 Python
HTML5中判断横屏竖屏的方法(移动端)
2016/08/04 HTML / CSS
浅析数据存储的三种方式 cookie sessionstorage localstorage 的异同
2020/06/04 HTML / CSS
国贸类专业毕业生的求职信分享
2013/12/08 职场文书
小学优秀教育工作者事迹材料
2014/05/09 职场文书
给校长的建议书300字
2014/05/16 职场文书
工作说明书格式
2014/07/29 职场文书
出差报告范文
2014/11/06 职场文书
2014社会治安综合治理工作总结
2014/12/04 职场文书
儿童诗两首教学反思
2016/02/23 职场文书
Python中常见的导入方式总结
2021/05/06 Python
正确使用MySQL INSERT INTO语句
2021/05/26 MySQL