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