JS生成随机打乱数组的方法示例


Posted in Javascript onDecember 23, 2017

本文实例讲述了JS生成随机打乱数组的方法。分享给大家供大家参考,具体如下:

一、比较乱的排序方法

function fnLuanXu(num) {
    var aLuanXu=[];
    for (var i = 0; i < num; i++) {
      aLuanXu[i] = i;
    }
    for (var i = 0; i < num; i++) {
      var iRand = parseInt(num * Math.random());
      var temp = aLuanXu[i];
      aLuanXu[i] = aLuanXu[iRand];
      aLuanXu[iRand] = temp;
      //console.log('i='+i+';temp='+temp+';rand='+iRand+';array['+i+']='+aLuanXu[i]+';array['+iRand+']='+aLuanXu[iRand]+';array=['+aLuanXu+'];');
    }
    return aLuanXu;
}
//测试:
console.log(fnLuanXu(6));

运行结果:

JS生成随机打乱数组的方法示例

二、不太乱的排序方法,js内置函数。

function fnLuanXu(num) {
    var aLuanXu=[];
    for (var i = 0; i < num; i++) {
      aLuanXu[i] = i;
    }
    aLuanXu.sort(function(){return Math.random()>0.5?-1:1;})
    return aLuanXu;
}
//测试:
console.log(fnLuanXu(7));

运行结果:

JS生成随机打乱数组的方法示例

Javascript 相关文章推荐
JS对URL字符串进行编码/解码分析
Oct 25 Javascript
jQuery结合Json提交数据到Webservice,并接收从Webservice返回的Json数据
Feb 18 Javascript
IE8提示Invalid procedure call or argument 异常的解决方法
Sep 30 Javascript
ajaxFileUpload.js插件支持多文件上传的方法
Sep 02 Javascript
DOM基础教程之使用DOM设置文本框
Jan 20 Javascript
JQuery+CSS实现图片上放置按钮的方法
May 29 Javascript
原生js封装的一些jquery方法(详解)
Sep 20 Javascript
使用Javascript监控前端相关数据的代码
Oct 27 Javascript
浅谈Angular路由复用策略
Oct 04 Javascript
vue2.0 子组件改变props值,并向父组件传值的方法
Mar 01 Javascript
vue element项目引入icon图标的方法
Jun 06 Javascript
Vue2.0中三种常用传值方式(父传子、子传父、非父子组件传值)
Aug 16 Javascript
JavaScript实现的超简单计算器功能示例
Dec 23 #Javascript
Angular实现较为复杂的表格过滤,删除功能示例
Dec 23 #Javascript
Vue.js 的移动端组件库mint-ui实现无限滚动加载更多的方法
Dec 23 #Javascript
9种使用Chrome Firefox 自带调试工具调试javascript技巧
Dec 22 #Javascript
JavaScript中的一些隐式转换和总结(推荐)
Dec 22 #Javascript
原生JS写Ajax的请求函数功能
Dec 22 #Javascript
原生JS控制多个滚动条同步跟随滚动效果
Dec 22 #Javascript
You might like
说说PHP的autoLoad自动加载机制
2012/09/27 PHP
用 Composer构建自己的 PHP 框架之构建路由
2014/10/30 PHP
详解PHP的Yii框架的运行机制及其路由功能
2016/03/17 PHP
PHP调用QQ互联接口实现QQ登录网站功能示例
2019/10/24 PHP
用js做一个小游戏平台 (一)
2009/12/29 Javascript
jQuery 获取对象 定位子对象
2010/05/31 Javascript
判断用户的在线状态 onbeforeunload事件
2011/03/05 Javascript
页面调用单个swf文件,嵌套出多个方法。
2011/11/21 Javascript
如何使用jQuery Draggable和Droppable实现拖拽功能
2013/07/05 Javascript
js控制表单操作的常用代码小结
2013/08/15 Javascript
利用jquery写的左右轮播图特效
2014/02/12 Javascript
js中键盘事件实例简析
2015/01/10 Javascript
JavaScript严格模式详解
2017/01/16 Javascript
vue-router2.0 组件之间传参及获取动态参数的方法
2017/11/10 Javascript
bootstrap表格内容过长时用省略号表示的解决方法
2017/11/21 Javascript
浅谈在react中如何实现扫码枪输入
2018/07/04 Javascript
新版小程序登录授权的方法
2018/12/12 Javascript
vue通过数据过滤实现表格合并
2020/11/30 Javascript
layui 数据表格复选框实现单选功能的例子
2019/09/19 Javascript
[02:51]DOTA2 Supermajor小组分组对阵抽签仪式
2018/06/01 DOTA
python写xml文件的操作实例
2014/10/05 Python
Python sorted函数详解(高级篇)
2018/09/18 Python
python list转置和前后反转的例子
2019/08/26 Python
LEGO玩具英国官方商店:LEGO Shop GB
2018/03/27 全球购物
澳大利亚领先的运动鞋商店:Hype DC
2018/03/31 全球购物
马来西亚最热门的在线时尚商店:FashionValet
2018/11/11 全球购物
应届生煤化工求职信
2013/10/21 职场文书
大学生就业自我鉴定
2013/10/26 职场文书
2014年党课学习材料
2014/05/11 职场文书
试用期转正后的自我评价
2014/09/21 职场文书
2015年效能监察工作总结
2015/04/23 职场文书
教师思想工作总结2015
2015/05/13 职场文书
写好求职信的技巧解密
2019/05/14 职场文书
MySQL慢查询的坑
2021/04/28 MySQL
详解Mysql事务并发(脏读、不可重复读、幻读)
2022/04/29 MySQL
html中两种获取标签内的值的方法
2022/06/10 HTML / CSS