js用户密码强度验证函数

js调用此函数,返回密码强度级别
function getStrength(passwd){
	intScore = 0;
	if (passwd.match(/[a-z]/)) // [验证]至少一个小写字母
	{
		intScore = (intScore+1)
	} if (passwd.match(/[A-Z]/)) // [验证]至少一个大写字母
	{
		intScore = (intScore+5)
	} // 单一验证
	if (passwd.match(//d+/)) // [验证]至少一个数字
	{
		intScore = (intScore+5)
	} if (passwd.match(/(/d.*/d.*/d)/)) // [验证]至少三个数字
	{
		intScore = (intScore+5)
	} // 特殊字符验证
	if (passwd.match(/[!,@#$%^&*?_~]/)) // [验证]至少一个特殊字符
	{
		intScore = (intScore+5)
	} if (passwd.match(/([!,@#$%^&*?_~].*[!,@#$%^&*?_~])/)) // [验证]至少两个特殊字符
	{
		intScore = (intScore+5)
	} // 复合验证
	if (passwd.match(/[a-z]/) && passwd.match(/[A-Z]/)) // [验证]同时包含大写和小写
	{
		intScore = (intScore+2)
	} if (passwd.match(//d/) && passwd.match(//D/)) // [验证] 同时包含字母和数字
	{
		intScore = (intScore+2)
	} // [验证] 同时包含大写字母,小写字母,数字和特殊字符
	if (passwd.match(/[a-z]/) && passwd.match(/[A-Z]/) && passwd.match(//d/) && passwd.match(/[!,@#$%^&*?_~]/))
	{
		intScore = (intScore+2)
	}
	return intScore;
}

另外一种方法。用一条正则验证密码强度,密码为6位数字或字符组成,且必须含有一个数字、一个字符

^(?=\d{0,5}[a-zA-Z])(?=[a-zA-Z]{0,5}\d)[a-zA-Z0-9]{6}$
1. 一个 ^[a-zA-Z0-9]{6}$ 匹配整个密码串

2.接着1个断言,验证密码中必须出现过字符(?=\d{0,5}[a-zA-Z])

3.类似第2步,也是一个断言,验证密码中必须出现过数字(?=[a-zA-Z]{0,5}\d)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值