检测密码强度

  在大多数平台注册一个新账户,输入密码是必须的,有时候为了提醒用户设置一个相对安全的密码,会检测密码强度。 

/**
 * @param input (密码框)
 * @param notice (文本提示)
 * 检测密码强度  供参考
**/
function checkPasswordStrength(input,notice){
	var str = [‘密码强度:弱‘,‘密码强度:中‘,‘密码强度:强‘],
	getStrength = function(str){
		var strength = 0;
		if (str.length < 6) return strength;
		if (/\d/.test(str)) strength++; //数字
		if (/[a-z]/.test(str)) strength++; //小写
		if (/[A-Z]/.test(str)) strength++; //大写
		if (/\W/.test(str)) strength++; //特殊字符
		switch (strength) {
			case 1:
				return 1;
			break;
			case 2:
				return 2;
			break;
			case 3:
			case 4:
				return str.length < 12 ? 3 : 4
			break;
		}
	},
	strong;
	input.oninput = input.onpropertychange = function(){
		strong = getStrength(input.value);
		switch (strong){
			case 0:
				notice.innerHTML = ‘‘;
			break;
			case 1:
			case 2:
				notice.innerHTML = str[0];
			break;
			case 3:
				notice.innerHTML = str[1];
			break;
			case 4:
				notice.innerHTML = str[2];
			break;
		}
	}
}

//use
var input = document.getElementById(‘password‘), notice = document.getElementById(‘notice‘);
checkPasswordStrength(input,notice);		}

  很简单的一个检测函数,在用户输入时检测密码是否有数字、小写字母、大写字母、特殊符号,根据输入判断密码强度。

  其中使用了事件:oninput 、 onpropertychange 来监听输入框值变化。

  

时间: 2024-08-30 07:41:09

检测密码强度的相关文章

密码强度应用(js)

<!-- 密码强度div --> <div id="tips" class="help-block"> <b class="fl">密码强度:</b><span></span><span></span><span></span> </div><script type="text/javascript&

js密码强度

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

JS 密码强度

////////////////////////////////////////////////////////////////////// //密码检测密码强度 ////////////////////////////////////////////////////////////////////// function checkStrong(sValue) { var modes = 0; //正则表达式验证符合要求的 if (sValue.length < 1) return modes;

js动态判断密码强度

// 网上拷贝的代码,效果不太好需要自己调整<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta htt

多平台实现密码强度(Javascript 、android、ios)

密码强度是目前很常用的一种功能,密码强度的实现,在web端都很好实现,可以很轻松的使用Javascript方法实现,目前因为项目需要,要在手机app上也实现密码强度,并且同时要在Android和ios上都实现相同功能,密码复杂度,无外乎大写字母.小写字母.数字和特殊符号,且需要加上重复字符出现的次数等,一般常用的方法都是使用正则表达式. 查阅了很多资料,网上在app端实现密码强度的例子基本没有(手机QQ是调用的web页面,支付根本没有密码复杂度),且又要web端和app端的三种语言通用,没办法只

CSS之密码强度检测

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>用户密码强度检测</title>

密码强度检测效果

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Typ

四级密码强度检测

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title> 密码强度检测 </title> <meta http-equiv="Content-Type" content="text/

基于规则评分的密码强度检测算法分析及实现(JavaScript)

简言 用正则表达式做用户密码强度的通过性判定,过于简单粗暴,不但用户体验差,而且用户帐号安全性也差.那么如何准确评价用户密码的强度,保护用户帐号安全呢?本文分析介绍了几种基于规则评分的密码强度检测算法,并给出了相应的演示程序.大家可以根据自己项目安全性需要,做最适合于自己的方案选择. 1 方案1 (简单) 方案1算法通过密码构成分析,结合权重分派,统计得出密码强度得分.得分越高,表示密码强度越大,也就越安全.方案1算法思想简单,实现容易. 1.1 方案1评分标准 一.密码长度: 5 分: 小于等