实现4位数 数字字母混合验证码(数字+大写字母+小写字母)

ASCII 字符集中得到3个范围:

  1. 48-57 表示数字0-9

  2. 65-90 表示大写字母

  3. 97-122 表示小写字母

范围随机数:
parseInt(Math.random()*); //此时Math.random意为“大于等于0,小于4”,取整后为0~3
// 如何把最小值变成1呢? +1就变成了1
parseInt(Math.random()*)+; // +1后范围变成了“大于等于1,小于5”,parseInt取整后范围是1~4 // 如果想获取50-100的范围随机数 min ~ max
min + parseInt(Math.random()*(max - min + )); //+1后Math.random取值为 大于等于0,小于51
// min + 0 ~ 50 = 50~100

具体实现如下:

     <script>
// 获取随机数的范围
function getRandomInt (min , max){
return min + parseInt(Math.random() * (max - min + 1))
}
// 获取验证码
function getStringValidate(){
var res = "";
var min , max;
// 循坏代码进行拼接
for(var i = 0; i < 4; i++){
// 选择范围 1,2,3
// 决定 范围的开头和结尾
switch(getRandomInt(1 , 3)){
// 1是数字
case 1 :
min = 48; max = 57;
break;
// 2是大写字母
case 2 :
min = 65; max = 90;
break;
// 3是小写字母
case 3 :
min = 97; max = 122;
break;
}
// console.log(min , max);//随机范围
var randomInt = getRandomInt(min , max);
// var randomString = String.fromCharCode(randomInt);
// console.log(randomString);//一个随机字符 经过上面的4次循环,生成4个随机数
// 拼接起来
res += String.fromCharCode(randomInt);
}
// console.log(randomString);//经过上面的4次循环,生成4个随机数
console.log(res);
return res;
}
getStringValidate();
</script>

最新文章

  1. 从一个控制器调到另一个控制器的[UIViewController _loadViewFromNibNamed:bundle:]崩溃
  2. 【Phylab2.0】Alpha版本发布说明
  3. hdu 1455 Sticks
  4. POJ-2752 Seek the Name, Seek the Fame(KMP,前缀与后缀相等)
  5. 无法解析指定的连接标识符 oracle错误12154
  6. 广州Uber优步司机奖励政策(1月18日~1月24日)
  7. 使用MongoDB的开源项目(转)
  8. POJ 1745 Divisibility (线性dp)
  9. JVM学习(1)——通过实例总结Java虚拟机的运行机制(转)
  10. ArcEngine下一个TIN生成的轮廓
  11. mybatis的逆向工程和中文注解
  12. ORM版学员管理系统 2
  13. springboot(十四):springboot整合mybatis
  14. CodeForces 430A Points and Segments (easy)(构造)题解
  15. PHP引用赋值
  16. 如何配置Smarty模板
  17. BeanUtils.populate的方法的作用
  18. fdisk 分区格式化为ext4格式分区
  19. spring mvc 多数据源切换,不支持事务控制[一]
  20. python虚拟机运行原理

热门文章

  1. js 实现图片的放大和缩小
  2. SyntaxError: unexpected character after line continuation character
  3. 解决不管其他元素z-index设置多高,都在视频下面的方法
  4. 曹工说Spring Boot源码(23)-- ASM又立功了,Spring原来是这么递归获取注解的元注解的
  5. ADO.NET 的使用(一)
  6. 关于Web2.0
  7. 【webpack 系列】基础篇
  8. 用java分组查elasticsearch
  9. Hive知识点
  10. TensorFlow 一步一步实现卷积神经网络