随机验证码在实际开发中经常用到,看似复杂,实则非常简单。我们只需要用到前面学到的生成随机数的技巧,然后结合字符串与数组操作就可以轻松实现。
实现代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script>
var str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
var arr = str.split("");
var result = "";
for(var i=0;i<4;i++)
{
var n = Math.floor(Math.random() * arr.length);
result += arr[n];
}
document.write(result);
</script>
</head>
<body>
</body>
</html>
浏览器预览效果如下图所示。
分析:
上面用Math.random()生成了随机验证码,每一次的运行结果都是不一样的。这里注意一点,由于数组下标是从0开始的,因此写成下面这样是错误的。
var n = Math.floor(Math.random() * (arr.length+1);
正确的应该写成:
var n = Math.floor(Math.random() * arr.length);