四位数字和字母混合的随机验证码

<script>
    // 创建 取范围随机数 函数
    function random(min,max){
        if(min>max){
            var ls = min;
            min = max;
            max = ls;
        }
        return Math.floor(Math.random()*(max-min+1))+min;
    }
    // 只有数字、小写字母、大写字母三种类型,需要四位随机验证码
    // 所以,第四位由谁来补充,怎样做到概率相等?
    // 创建一个12位的字符串,3种类型执行4次,相当于4位数出现了3次
    // 这样,每种类型都补充了一次,机会均等了
    var str = "";
    for(i=0;i<4;i++){
        var num = random(0,9);
        var ENG = String.fromCharCode(random(65,90));
        var eng = String.fromCharCode(random(97,122));
        str = str + num + ENG + eng;
    }
    
    var code = "";
    for(i=0;i<4;i++){
        // 在12位字符串中,通过索引,随机取4次,然后拼接
        code = code + str[random(0,str.length-1)];
    }
    console.log(code);

</script>

猜你喜欢

转载自www.cnblogs.com/Lyongliang/p/12892268.html
今日推荐