js密码的校验(判断字符类型、统计字符类型个数)

/**
 *判断字符类型 
 */  
function CharMode(iN) {  
    if (iN >= 48 && iN <= 57) //数字    
        return 1;  
    if (iN >= 65 && iN <= 90) //大写字母    
        return 2;  
    if (iN >= 97 && iN <= 122) //小写    
        return 4;  
    else  
        return 8; //特殊字符    
} 
/** 
 * 统计字符类型 
 */
function bitTotal(num) {  
    var modes = 0;  
    for (i = 0; i < 4; i++) {  
        if (num & 1) modes++;  
        num >>>= 1;  
    }  
    return modes;  
}
/**
*密码组合必须是两种字符或以上
*/
function
validationPass(){ var Modes = 0; var newPass = $('#newPass').val(); var newPassLen = newPass.length; if(newPassLen<6){ $("#passWarn").html("密码长度大于等于6"); return false; }else{ $("#passWarn").html(""); } for (i = 0; i < newPass.length; i++) { //测试每一个字符的类别并统计一共有多少种模式. Modes |= CharMode(newPass.charCodeAt(i)); } if(bitTotal(Modes) ==1||bitTotal(Modes) <1 ){ $("#passWarn").html("密码必须由两种以上字符组成"); return false; }else{ $("#passWarn").html(""); return true; } }
原文地址:https://www.cnblogs.com/longqingyang/p/5710202.html