js如何驗(yàn)證密碼強(qiáng)度
驗(yàn)證“密碼強(qiáng)度”的例子很常見,我們注冊新的賬號的時候往往設(shè)置密碼,此時就遇到驗(yàn)證密碼強(qiáng)度的問題了?!懊艽a強(qiáng)度”也就是密碼難易程度的意思。
原理:
1、如果輸入的密碼為單純的數(shù)字或者字母:提示“低”
2、如果是數(shù)字和字母混合的:提示“中”
3、如果數(shù)字、字母、特殊字符都有:提示“強(qiáng)”
下面是一種“密碼強(qiáng)度”的驗(yàn)證方法,覺得很有意思。
HTML和CSS代碼:
<!DOCTYPE HTML>
<html > <!-- lang="en" -->
<head>
<meta charset="utf-8" />
<title>密碼強(qiáng)度</title>
<style type="text/css">
#pwdStrength {
height: 30px;
width: 180px;
border: 1px solid #ccc;
padding: 2px;
}
.strengthLv1 {
background: red;
height: 30px;
width: 60px;
}
.strengthLv2 {
background: orange;
height: 30px;
width: 120px;
}
.strengthLv3 {
background: green;
height: 30px;
width: 180px;
}
#pwd {
height:30px;
font-size :20px;
}
strong {
margin-left:90px;
}
#pwd1 {
color:red;
margin-top:5px;
margin-bottom:5px;
}
</style>
</head>
<body>
<input type="password" name="pwd" id="pwd" maxlength="16" />
<div class="pass-wrap">
<!--<em>密碼強(qiáng)度:</em>-->
<p id="pwd1" name="pwd">密碼強(qiáng)度:</p>
<div id="pwdStrength"></div>
</div>
</body>
</html>
javascript代碼:
<script type="text/javascript">
function PasswordStrength(passwordID, strengthID) {
this.init(strengthID);
var _this = this;
document.getElementById(passwordID).onkeyup = function () {//onkeyup 事件,在鍵盤按鍵被松開時發(fā)生,進(jìn)行判斷
_this.checkStrength(this.value);
}
};
PasswordStrength.prototype.init = function (strengthID) {
var id = document.getElementById(strengthID);
var div = document.createElement('div');
var strong = document.createElement('strong');
this.oStrength = id.appendChild(div);
this.oStrengthTxt = id.parentNode.appendChild(strong);
};
PasswordStrength.prototype.checkStrength = function (val) { //驗(yàn)證密碼強(qiáng)度的函數(shù)
var aLvTxt = ['', '低', '中', '高'];//定義提示消息的種類
var lv = 0; //初始化提示消息為空
if (val.match(/[a-z]/g)) { lv++; } //驗(yàn)證是否包含字母
if (val.match(/[0-9]/g)) { lv++; } // 驗(yàn)證是否包含數(shù)字
if (val.match(/(.[^a-z0-9])/g)) { lv++; } //驗(yàn)證是否包含字母,數(shù)字,字符
if (val.length < 6) { lv = 0; } //如果密碼長度小于6位,提示消息為空
if (lv > 3) { lv = 3; }
this.oStrength.className = 'strengthLv' + lv;
this.oStrengthTxt.innerHTML = aLvTxt[lv];
};
new PasswordStrength('pwd','pwdStrength');
</script>
效果圖:

小結(jié):
1.利用onkeyup 事件(在鍵盤按鍵被松開時發(fā)生)進(jìn)行三種判斷,簡單方便。
2. 正則表達(dá)式的功能真的很強(qiáng)大。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- JS 密碼強(qiáng)度驗(yàn)證(兼容IE,火狐,谷歌)
- javaScript 簡單驗(yàn)證代碼(用戶名,密碼,郵箱)
- javascript實(shí)現(xiàn)密碼驗(yàn)證
- Js密碼強(qiáng)度實(shí)時驗(yàn)證代碼
- js 驗(yàn)證密碼強(qiáng)弱的小例子
- AngularJs驗(yàn)證重復(fù)密碼的方法(兩種)
- js驗(yàn)證手機(jī)號、密碼、短信驗(yàn)證碼代碼工具類
- JS正則表達(dá)式驗(yàn)證密碼強(qiáng)度
- 原生js實(shí)現(xiàn)密碼強(qiáng)度驗(yàn)證功能
- javascript實(shí)現(xiàn)前端input密碼輸入強(qiáng)度驗(yàn)證
相關(guān)文章
微信小程序數(shù)據(jù)分析之自定義分析的實(shí)現(xiàn)
這篇文章主要介紹了微信小程序數(shù)據(jù)分析之自定義分析的實(shí)現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-08-08
JavaScript瀑布流布局實(shí)現(xiàn)代碼
這篇文章主要為大家詳細(xì)介紹了JavaScript瀑布流布局的實(shí)現(xiàn)代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05
如何在現(xiàn)代JavaScript中編寫異步任務(wù)
這篇文章主要給大家介紹了關(guān)于如何在現(xiàn)代JavaScript中編寫異步任務(wù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01
JavaScript數(shù)組中相同的元素進(jìn)行分組(數(shù)據(jù)聚合)groupBy函數(shù)詳解
今天在打算從js端時序數(shù)據(jù)庫TSDB中,按相同的類型的數(shù)據(jù)排在一起,并且取同一時間段最新的數(shù)據(jù),經(jīng)過查詢這種思想叫做數(shù)據(jù)聚合,就是返回的數(shù)據(jù)要根據(jù)一個屬性來做計(jì)算,這篇文章主要介紹了JavaScript數(shù)組中相同的元素進(jìn)行分組(數(shù)據(jù)聚合)?groupBy函數(shù),需要的朋友可以參考下2023-12-12

