javascript判断密码强度

最近在google个人帐号中修改密码,觉得里面的密码强度提示比较有意思,与大家分享。

效果预览:[url=http://www.sword88.com/wp-content/uploads/2010/10/verify.html]demo[/url]

实现思路:

1.将input绑定onkeyup事件(当键盘按下时触发事件).
< input οnkeyup=”verifyPwdStrong()” type=”text” />
2.判断并画出密码强度

function verifyPwdStrong(){
var passwd = document.getElementById('userpwd1');
var minLength = 6;
if(passwd.value.length >= minLength){
var rating = checkStrong(passwd.value);
drawBar(rating);
}else{
if(passwd.value.length > 0){
drawBar(0);
}else{
resetBar();
}
}
}

密码强度算法如下:

//计算出当前密码当中一共有多少种模式
function bitTotal(num){
var modes = 0;
for(var i = 0;i < 4;i++){
if(num & 1){modes++;}
num >>>= 1;
}
return modes;
}

//字符类型
function charMode(content){
if(content >= 48 && content <= 57){
return 1;
}else if(content >= 65 && content <= 90){
return 2;
}else if(content >= 97 && content <= 122){
return 4;
}else{
return 8;
}
}

//密码强度
function checkStrong(content){
var modes = 0;
if(content.length < 6){
return modes;
}
for(var i = 0;i < content.length; i++){
modes |= charMode(content.charCodeAt(i));
}
return bitTotal(modes);
}

更多内容请查看[url=http://www.sword88.com]www.sword88.com[/url]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值