zoukankan      html  css  js  c++  java
  • 生成不重复的随机数

    0x00、从一个数组(arr)随机生成有(num)个不相同的值的数组

    function createRandom( num, arr ) {
        var arrCache = [],
            objCache = {};
    
        while( arrCache.length < num ) {
    
            var randomNum = Math.floor( Math.random() * arr.length );
    
            //通过判断objCache对象的索引值是否存在 来标记 是否重复
            if( !objCache[randomNum] ) {
                objCache[randomNum] = 1;
                arrCache.push( arr[randomNum] );
            }
        } 
    
        return arrCache;
    }

    0x01、生成一个范围数组,然后数组打乱顺序,截取你需要的个数

    /*
        num 要产生多少个随机数
        from 产生随机数的最小值
        to 产生随机数的最大值
    */
    
    function createRandom( num ,from ,to ) {
        var arr=[];
        for( var i = from; i <= to; i++ )
            arr.push( i );
        arr.sort(function(){
            return 0.5 - Math.random();
        });
        arr.length = num;
    
        return arr;
    }
  • 相关阅读:
    ajax请求超时
    tp5去重统计某字段的数量
    html本地存储 localStorge
    json、obj转换
    关于数组的合并arr.push() arr.push.apply()
    curl内容
    js 回车键登录
    tp5 前置操作
    STL容器
    c++文件的读写
  • 原文地址:https://www.cnblogs.com/frontendBY/p/4876547.html
Copyright © 2011-2022 走看看