javascript 检验密码强度 -- 字符 数字 符号
? ?用javascript校验密码强度级别,可以检测字母、数字和英文键盘符号,strength值越大则密码越安全。正则表达式版本:
?
var testPwdStrength2 = function(pwdText) {var pwdStrength = 0;if(pwdText.length < 8) {pwdStrength = -101; // Too short} else if(pwdText.length > 32) {pwdStrength = -102; // Too long} else {var tempCharCode = 0, lowerCaseLetterCounter = 0, upperCaseLetterCounter = 0, digitCounter = 0, signalCounter = 0;for(var i = 0; i < pwdText.length; i++) {tempCharCode = pwdText.charCodeAt(i);if(tempCharCode > 32 && tempCharCode < 127) { // Visible charif(tempCharCode >= 48 && tempCharCode <= 57) {// 0-9++digitCounter;} else if(tempCharCode >= 65 && tempCharCode <= 90) {// A-Z++upperCaseLetterCounter;} else if(tempCharCode >= 97 && tempCharCode <= 122) {// a-z++lowerCaseLetterCounter;} else {++signalCounter;}} else { // Invalid charpwdStrength = -404;break;}}if(upperCaseLetterCounter > 0 || lowerCaseLetterCounter > 0) {++pwdStrength;}if(digitCounter > 0) {++pwdStrength;}if(signalCounter > 0) {++pwdStrength;}}return pwdStrength;};?
?
? ?以上代码在chrome/firefox/ie9下测试通过。函数返回值表示密码的组成情况(字母/数字/符号),如果需要确定密码的具体组合情况可以酌情修改上述代码实现。
?