jQuery实现的生成随机密码代码实例简单介绍
本章节介绍一下如何使用jQuery实现生成随机密码的效果。
有需要的朋友可以做一下参考,代码实例如下:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.pipipi.net/" /> <title>前端教程网</title> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> <script type="text/javascript"> $.extend({ password: function (length, special) { var iteration = 0; var password = ""; var randomNumber; if(special == undefined){ var special = false; } while(iteration < length){ randomNumber = (Math.floor((Math.random() * 100)) % 94) + 33; if(!special){ if ((randomNumber >=33) && (randomNumber <=47)) { continue; } if ((randomNumber >=58) && (randomNumber <=64)) { continue; } if ((randomNumber >=91) && (randomNumber <=96)) { continue; } if ((randomNumber >=123) && (randomNumber <=126)) { continue; } } iteration++; password += String.fromCharCode(randomNumber); } return password; } }); $(document).ready(function(){ $("#antzone").html($.password(8)+"<br/>"+$.password(12, true)); }); </script> </head> <body> <div id="antzone"></div> </body> </html>
上面的实现了我们的要求,下面介绍一下它的实现过程。
一.代码注释:
(1).$.extend({}),扩展jQuery的静态方法。
(2).password: function (length, special) {},能够生成密码的函数,第一个参数是密码的长度,第二个参数表示密码中是否有特殊字符,可以除去undefined以外的任意值。
(3).var iteration = 0,此变量用来存储计数。
(4).var password = "",用来存储生成的密码。
(5).var randomNumber,此变量用来生成随机数。
(6).if(special == undefined){
var special = false;
},判断是否传递了第二个参数,如果没有传递参数,或者就是传递的undefined吗,那么就将special值设置为false。
(7).while(iteration < length),进行while循环运算。
(8).randomNumber=(Math.floor((Math.random()*100)) % 94) + 33,获取随机数,值是0-126之间的(ASCII码对应的)。
(9).if(!special){
if ((randomNumber >=33) && (randomNumber <=47)) { continue; }
if ((randomNumber >=58) && (randomNumber <=64)) { continue; }
if ((randomNumber >=91) && (randomNumber <=96)) { continue; }
if ((randomNumber >=123) && (randomNumber <=126)) { continue; }
},如果不包含特殊字符,那么就会进行相应的区间控制,上面的几个区间的ASCII码值对应的都是特殊字符,直接跳过。
(10).iteration++,值加1。
(11).password += String.fromCharCode(randomNumber),获取对应的字符。
(12).return password,返回密码字符串。
二.相关阅读:
(1).Math.floor()方法可以参阅javascript Math.floor()一章节。
(2).Math.random()方法可以参阅js Math.random()一章节。
(3).String.fromCharCode()方法可以参阅javascript fromCharCode()一章节。