• 产生指定范围不重复的随机数,产生指定数组不重复的随机数


    /**
                 *  产生指定范围不重复的随机数
                 *  参数一: 最小值    int
                 *  参数二: 最大值    int
                 *  参数三: 随机数量  int
                 *  返回值: 结果数组  Array
                 **/
                function getRandNumForRange(least, max, num) {
                    // 检查传值是否合法
                    if(num > max - least) return false;
                    // 产生指定范围的所有数值
                    var numList = [],
                        numRandList = [],
                        randId;
                    for(var i = least; i < max; i++) numList.push(i);
                    // 产生记录次数
                    for(var i = 0; i < num; i++) {
                        randId = Math.floor(Math.random() * numList.length); // 随机一个数组ID
                        numRandList.push(numList[randId]); // 获取这个值
                        numList.splice(randId, 1); // 删除这个成员 防止下次再次生成
                    }
                    return numRandList;
                }
    
                /**
                 *  产生指定数组不重复的随机数
                 *  参数一: 抽取数组  Array
                 *  参数二: 随机数量  int
                 *  返回值: 结果数组  Array
                 **/
                function getRandNumForArray(numArray, num) {
                    // 检查传值是否合法
                    if(num > numArray.length) return false;
                    // 产生记录次数
                    var numRandList = [],
                        randId;
                    for(var i = 0; i < num; i++) {
                        randId = Math.floor(Math.random() * numArray.length); // 随机一个数组ID
                        numRandList.push(numArray[randId]); // 获取这个值
                        numArray.splice(randId, 1); // 删除这个成员 防止下次再次生成
                    }
                    return numRandList;
                }
  • 相关阅读:
    强大的mono.cecil
    关于svn不能cleanup的问题
    SVN项目,快速查看项目的当前版本号
    jQuery选择器总结
    将Excel数据导入mysql数据库的几种方法
    SpringMVC表单标签简介
    mybatis动态SQL语句
    mysql时间格式化,按时间段查询MYSQL语句
    深入了解ios系统机制
    Eclipse 官方简体中文语言包下载地址及安装方法
  • 原文地址:https://www.cnblogs.com/lipengze/p/11429507.html
Copyright © 2020-2023  润新知