js验证密码安全强度
common.js
/**
* 验证密码强度
*/
//CharMode函数,测试某个字符是属于哪一类
function CharMode(iN){
if( iN >= 48 && iN <= 57 ){//数字
return 1;
}else if( iN >= 65 && iN <= 90 ){//大写字母
return 2;
}else if( iN >= 97 && iN <= 122 ){//小写字母
return 4;
}else{
return 8;//特殊字符
}
}
var modes;
//bitTotal函数,计算出当前密码当中一共有多少种模式
function bitTotal(num){
modes = 0;
for( i = 0; i < 4; i++ ){
if( num & 1){
modes++;
}
num>>>=1;
}
return modes;
}
//checkStrong函数,返回密码的强度级别
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);
}
密码框的onkeyup事件调用的方法:
//检测密码强度
function pwStrength(){
var pwd = $('#newpassword').val();
var width = 0;//105,159
var safeStr = '';
if( pwd == null || pwd == '' ){
width = 0;
}else{
S_level = checkStrong(pwd);
switch(S_level){
case 0:
width = 60;
safeStr = '弱';
break;
case 1:
width = 105;
safeStr = '中';
break;
case 2:
width = 159;
safeStr = '强';
break;
default:
width = 0;
}
}
$('.ucenter_progress_bar').css('width',width+'px');
$('.ucenter_safedetail').html(safeStr);
}
里面控制的是div的宽度,div有变色的背景图片。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
