随机生成密码的原理比较简单,下面就是利用 JavaScript 进行密码生成的函数。
预备知识:
Math.random() Math 是 JavaScript 内置对象,random()产生随机数,随机数>=0,<1。
parseInt(numstring[, radix]) 将字符串转换成整数,radix 是数字进制,默认 10。在这里我们利用本函数去除数字的小数部分。
objstring.substr(start, count) 返回字符串 objstring 中从 start (含)开始之后的 count 个字符。
参数介绍:
len 密码长度
lcase 密码中是否允许小写字母
ucase 密码中是否允许大写字母
number 密码中是否允许数字
userDic 用户参与密码生成的字典
<script type="text/javascript" language="javascript">
<!--
function CreatePasswd(len, lcase, ucase, number, userDic)
{
var dic = userDic;
if (lcase)
{
dic += "abcdefghijklmnopqrstuvwxyz";
}
if (ucase)
{
dic += "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
}
if (number)
{
dic += "0123456789";
}
var passwd = "";
for (var i=0; i<len; i++)
{
passwd += dic.substr(parseInt(dic.length*Math.random()), 1);
}
return passwd;
}
//-->
</script>