當前位置:軟件學堂 > 資訊首頁 > 網(wǎng)絡編程 > 編程其他 > 通過JS對密碼強度進行檢查

通過JS對密碼強度進行檢查

2012/11/9 11:29:17作者:佚名來源:網(wǎng)絡

移動端

【實例名稱】

通過JS對密碼強度進行檢查

【實例描述】

密碼強度檢查一般用在網(wǎng)站用戶注冊時,用來檢查用戶輸入的密碼是否安全,此功能也是Ajax Web 2.0技術的特色。本例學習使用JavaScript實現(xiàn)密碼強度檢查。

【實例代碼】

<html> <head> <title>密碼強度提示-學無憂(www.denvermotorcycleaccidentlawyer.com)</title> <style type="text/css"> #chkResult{margin-left:53px;height:15px;} </style> </head> <body> <form name="form1"> <label for="pwd">用戶密碼</label> <input type="password" name="pwd" onblur="chkpwd(this)" /> <div id="chkResult"></div> <label for="pwd2">重復密碼</label> <input type="password" name="pwd2" /> </form> <script type="text/javascript"> //檢測密碼的方法 function chkpwd(obj) { var t=obj.value; var id=getResult(t); //定義對應的消息提示 var msg=new Array(4); msg[0]="密碼太短。"; msg[1]="密碼強度比較差。"; msg[2]="密碼強度一般。"; msg[3]="密碼強度高。"; var sty=new Array(4); sty[0]=-45; sty[1]=-30; sty[2]=-15; sty[3]=0; //消息提示對應的顏色 var col=new Array(4); col[0]="gray"; col[1]="red"; col[2]="#ff6600"; col[3]="Green";

//設置顯示效果 var sWidth=300; var sHeight=15; var Bobj=document.getElementById("chkResult"); Bobj.style.fontSize="12px"; Bobj.style.color=col[id]; Bobj.style.width=sWidth + "px"; Bobj.style.height=sHeight + "px"; Bobj.style.lineHeight=sHeight + "px"; Bobj.style.textIndent="20px"; Bobj.innerHTML="密碼檢測提示:" + msg[id]; }

//定義檢測函數(shù),返回0/1/2/3分別代表無效/差/一般/強 function getResult(s){ if(s.length < 4){ return 0; } var ls = 0; if (s.match(/[a-z]/ig)){ ls++; } if (s.match(/[0-9]/ig)){ ls++; } if (s.match(/(.[^a-z0-9])/ig)){ ls++; } if (s.length < 6 && ls > 0){ ls--; } return ls } </script> </body> </html>

 

【運行效果】

 密碼強度檢查運行效果

【難點剖析】

本例的難點在于判斷用戶輸入的密碼是字母還是數(shù)字,這里使用了正則表達式。“s.match(/[a-z]/ig)”用來檢測字母,“s.match(/[o一9]/ig)”用來檢測數(shù)字,“s.match(/(.[^a-z0-9】)/ig)”則檢查密碼是否既包含字母又包含數(shù)字。

【源碼下載】

為了JS代碼的準確性,請點擊:通過JS對密碼強度進行檢查 進行本實例源碼下載 

標簽: JS  密碼  檢查