js密碼強度檢測
本文實例講解了js密碼強度檢測的實現(xiàn)代碼,分享給大家供大家參考,具體內(nèi)容如下
運行效果圖:

這段JavaScript代碼比較實用,它完成用戶注冊時判斷用戶輸入密碼的強度,分強、弱、中三等級,它可以根據(jù)用戶輸入的密碼顯示對應的密碼強弱等級,方便用戶改進輸入。
實現(xiàn)代碼:
<html>
<head>
<title>JS判斷密碼強度</title>
<script language=javascript>
//判斷輸入密碼的類型
function CharMode(iN){
if (iN>=48 && iN <=57) //數(shù)字
return 1;
if (iN>=65 && iN <=90) //大寫
return 2;
if (iN>=97 && iN <=122) //小寫
return 4;
else
return 8;
}
//bitTotal函數(shù)
//計算密碼模式
function bitTotal(num){
modes=0;
for (i=0;i<4;i++){
if (num & 1) modes++;
num>>>=1;
}
return modes;
}
//返回強度級別
function checkStrong(sPW){
if (sPW.length<=4)
return 0; //密碼太短
Modes=0;
for (i=0;i<sPW.length;i++){
//密碼模式
Modes|=CharMode(sPW.charCodeAt(i));
}
return bitTotal(Modes);
}
//顯示顏色
function pwStrength(pwd){
O_color="#eeeeee";
L_color="#FF0000";
M_color="#FF9900";
H_color="#33CC00";
if (pwd==null||pwd==''){
Lcolor=Mcolor=Hcolor=O_color;
}
else{
S_level=checkStrong(pwd);
switch(S_level) {
case 0:
Lcolor=Mcolor=Hcolor=O_color;
case 1:
Lcolor=L_color;
Mcolor=Hcolor=O_color;
break;
case 2:
Lcolor=Mcolor=M_color;
Hcolor=O_color;
break;
default:
Lcolor=Mcolor=Hcolor=H_color;
}
}
document.getElementById("strength_L").style.background=Lcolor;
document.getElementById("strength_M").style.background=Mcolor;
document.getElementById("strength_H").style.background=Hcolor;
return;
}
</script>
</head>
<body>
<form name=form1 action="" >
密碼:<input type=password size=8 onKeyUp=pwStrength(this.value) onBlur=pwStrength(this.value)>
<br>密碼強度:
<table width="210" border="1" cellspacing="0" cellpadding="1" bordercolor="#eeeeee" height="22" style='display:inline'>
<tr align="center" bgcolor="#f5f5f5">
<td width="33%" id="strength_L">弱</td>
<td width="33%" id="strength_M">中</td>
<td width="33%" id="strength_H">強</td>
</tr>
</table>
</form>
</body>
</html>
這一款先看一看效果圖。

具體內(nèi)容:
<script>
function AuthPasswd(string) {
if(string.length >=6) {
if(/[a-zA-Z]+/.test(string) && /[0-9]+/.test(string) && /\W+\D+/.test(string)) {
noticeAssign(1);
}else if(/[a-zA-Z]+/.test(string) || /[0-9]+/.test(string) || /\W+\D+/.test(string)) {
if(/[a-zA-Z]+/.test(string) && /[0-9]+/.test(string)) {
noticeAssign(-1);
}else if(/\[a-zA-Z]+/.test(string) && /\W+\D+/.test(string)) {
noticeAssign(-1);
}else if(/[0-9]+/.test(string) && /\W+\D+/.test(string)) {
noticeAssign(-1);
}else{
noticeAssign(0);
}
}
}else{
noticeAssign(null);
}
}
function noticeAssign(num) {
if(num == 1) {
$('#weak').css({backgroundColor:'#009900'});
$('#middle').css({backgroundColor:'#009900'});
$('#strength').css({backgroundColor:'#009900'});
$('#strength').html('很強');
$('#middle').html('');
$('#weak').html('');
}else if(num == -1){
$('#weak').css({backgroundColor:'#ffcc33'});
$('#middle').css({backgroundColor:'#ffcc33'});
$('#strength').css({backgroundColor:''});
$('#weak').html('');
$('#middle').html('中');
$('#strength').html('');
}else if(num ==0) {
$('#weak').css({backgroundColor:'#dd0000'});
$('#middle').css({backgroundColor:''});
$('#strength').css({backgroundColor:''});
$('#weak').html('弱');
$('#middle').html('');
$('#strength').html('');
}else{
$('#weak').html(' ');
$('#middle').html(' ');
$('#strength').html(' ');
$('#weak').css({backgroundColor:''});
$('#middle').css({backgroundColor:''});
$('#strength').css({backgroundColor:''});
}
}
</script>
以上就是本文的全部內(nèi)容,希望對大家學習javascript程序設計有所幫助。
相關(guān)文章
javascript刪除數(shù)組元素并且數(shù)組長度減小的簡單實例
本篇文章主要是對javascript刪除數(shù)組元素并且數(shù)組長度減小的簡單實例進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-02-02
從js向Action傳中文參數(shù)出現(xiàn)亂碼問題的解決方法
Action獲取jsp表單中的中文參數(shù),只要整個項目都采用UTF-8編碼格式都不會出現(xiàn)亂碼問題;但JSP中用到JS,并從JS向Action傳中文參數(shù),就會出現(xiàn)中文亂的現(xiàn)象2013-12-12
上傳文件返回的json數(shù)據(jù)會被提示下載問題解決方案
這篇文章主要介紹了項目中python+js實現(xiàn)的上傳文件返回的json數(shù)據(jù)會被提示下載問題解決方案,需要的朋友可以參考下2014-12-12
微信小程序云函數(shù)使用mysql數(shù)據(jù)庫過程詳解
這篇文章主要介紹了微信小程序云函數(shù)使用mysql數(shù)據(jù)庫過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-08-08
200行HTML+JavaScript實現(xiàn)年會抽獎程序
這篇文章主要為大家詳細介紹了HTML+JavaScript實現(xiàn)年會抽獎程序的200行代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-01-01
使用JavaScript實現(xiàn)獲取頁面上所有的img并保存本地
這篇文章主要為大家詳細介紹了如何使用JavaScript實現(xiàn)獲取頁面上所有的img并保存到本地,文中的示例代碼講解詳細,有需要的小伙伴可以了解下2024-12-12
使用Three.js?實現(xiàn)虎年春節(jié)3D創(chuàng)意頁面
虎年春節(jié)將至,本文使用?React?+?Three.js技術(shù)棧,實現(xiàn)趣味?3D創(chuàng)意頁面,主要包括:ShadowMaterial、?MeshPhongMaterial等基本材質(zhì)的使用、使用?LoadingManager展示模型加載進度、OrbitControls`的緩動動畫、TWEEN簡單補間動畫效果等,感興趣的朋友一起看看吧2022-01-01

