JS随机生成密码

JS随机生成密码 

 

<html>
<head>
<script type="text/javascript">
function pwd(){
 var pwd = "";
 var numbers = "0123456789";
 var lower = "abcdefghijklmnopqrstuvwxyz";
 var upper = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
 var others = "
~!@#$%^&*()_";
 function rand(min,max){
  return Math.random()*(max-min)+min;
 }
 var pwdLen = parseInt(rand(10,13));//随机生成密码长度10-12位。
 alert("密码长度:"+pwdLen);
 var item = new Array(pwdLen);//存放密码的类型 数字(1),小写(2),大写(3),特殊字符(4)
 item[0]=1;
 item[1]=2;
 item[2]=3;
 item[3]=4;//确保密码中数字、大小写字母、特殊符号都存在。
 for(i=4;i<pwdLen;i++){
  item[i]="";
  item[i] += parseInt(Math.random()*4+1);//其余部分随机生成1-4的数字。
 }

//打乱次序,重新排序,否则密码第四位永远是特殊符号。

 item.sort(function(){return 0.5 - Math.random()});//返回0 两个数位置不变;小于0 就交换位置;大于0就不交换位置

 for(j=0;j<pwdLen;j++){
  if(item[j]==1){
   pwd += numbers.charAt(Math.random()*(numbers.length-1)+1);
  }else if(item[j]==2){
   pwd += lower.charAt(Math.random()*(lower.length-1)+1);
  }else if(item[j]==3){
   pwd += upper.charAt(Math.random()*(upper.length-1)+1);
  }else if(item[j]==4){
   pwd += others.charAt(Math.random()*(others.length-1)+1);
  }
 }
 document.getElementById("pwd").value = pwd;
 alert("请牢记您的密码:【"+pwd+"】");

}

function copyPwd(){
 var targetPwd = document.getElementById("pwd");
 if(targetPwd.value==""){
  alert("还未生成密码");
  return false;
 }
 targetPwd.select();
 document.execCommand("Copy");
 alert("密码已成功复制");
}

</script>
</head>
<body>

<input type="text" id="pwd"/><input type="button" value="生成密码" οnclick="pwd()"/><input type="button" value="复制密码" οnclick="copyPwd()"/>
</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值