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


    /**
                 *  产生指定范围不重复的随机数
                 *  参数一: 最小值    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;
                }
  • 相关阅读:
    Linux 安装 iptables防火墙
    CentOS最常用命令及快捷键整理
    WebAPI 和 webservice接口
    Linux 文件权限
    Linux查看系统信息的一些命令及查看已安装软件包的命令
    navicat连接虚拟机(centos)中的mysql
    Nmap扫描与Tcpdump抓包分析
    python 识别验证码自动登陆
    iptables开通某些端口
    hive的安装和使用
  • 原文地址:https://www.cnblogs.com/lipengze/p/11429507.html
Copyright © 2020-2023  润新知