js实现密码强度检测【附示例】


Posted in Javascript onMarch 30, 2016

这篇文章主要介绍了js实现密码强度检测的相关实例,第一个例子给出了全部代码,可以直接运行,第二个例子只给出了js代码,感兴趣的码农可以自己完成第二个实例。

第一个实例

这段JavaScript代码比较实用,它完成用户注册时判断用户输入密码的强度,分强、弱、中三等级,它可以根据用户输入的密码显示对应的密码强弱等级,方便用户改进输入。

实现代码:

<html>
<head>
<title>JS判断密码强度</title>
<script language=javascript> 
//判断输入密码的类型 
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; 
} 
//bitTotal函数 
//计算密码模式 
function bitTotal(num){ 
modes=0; 
for (i=0;i<4;i++){ 
if (num & 1) modes++; 
num>>>=1; 
} 
return modes; 
} 
//返回强度级别 
function checkStrong(sPW){ 
if (sPW.length<=4) 
return 0; //密码太短 
Modes=0; 
for (i=0;i<sPW.length;i++){ 
//密码模式 
Modes|=CharMode(sPW.charCodeAt(i)); 
} 
return bitTotal(Modes); 
} 
 
//显示颜色 
function pwStrength(pwd){ 
O_color="#eeeeee"; 
L_color="#FF0000"; 
M_color="#FF9900"; 
H_color="#33CC00"; 
if (pwd==null||pwd==''){ 
Lcolor=Mcolor=Hcolor=O_color; 
} 
else{ 
S_level=checkStrong(pwd); 
switch(S_level) { 
case 0: 
Lcolor=Mcolor=Hcolor=O_color; 
case 1: 
Lcolor=L_color; 
Mcolor=Hcolor=O_color; 
break; 
case 2: 
Lcolor=Mcolor=M_color; 
Hcolor=O_color; 
break; 
default: 
Lcolor=Mcolor=Hcolor=H_color; 
} 
} 
document.getElementById("strength_L").style.background=Lcolor; 
document.getElementById("strength_M").style.background=Mcolor; 
document.getElementById("strength_H").style.background=Hcolor; 
return; 
} 
</script>
</head>
<body> 
<form name=form1 action="" > 
密码:<input type=password size=8 onKeyUp=pwStrength(this.value) onBlur=pwStrength(this.value)> 
<br>密码强度: 
<table width="210" border="1" cellspacing="0" cellpadding="1" bordercolor="#eeeeee" height="22" style='display:inline'> 
<tr align="center" bgcolor="#f5f5f5"> 
<td width="33%" id="strength_L">弱</td> 
<td width="33%" id="strength_M">中</td> 
<td width="33%" id="strength_H">强</td> 
</tr> 
</table> 
</form>
</body>
</html>

第二个实例:

<script>
function AuthPasswd(string) {
  if (string.length >= 6) {
    if (/[a-zA-Z]+/.test(string) && /[0-9]+/.test(string) && /\W+\D+/.test(string)) {
      noticeAssign(1);
    } else if (/[a-zA-Z]+/.test(string) || /[0-9]+/.test(string) || /\W+\D+/.test(string)) {
      if (/[a-zA-Z]+/.test(string) && /[0-9]+/.test(string)) {
        noticeAssign( - 1);
      } else if (/\[a-zA-Z]+/.test(string) && /\W+\D+/.test(string)) {
        noticeAssign( - 1);
      } else if (/[0-9]+/.test(string) && /\W+\D+/.test(string)) {
        noticeAssign( - 1);
      } else {
        noticeAssign(0);
      }
    }
  } else {
    noticeAssign(null);
  }
}

function noticeAssign(num) {
  if (num == 1) {
    $('#weak').css({
      backgroundColor: '#009900'
    });
    $('#middle').css({
      backgroundColor: '#009900'
    });
    $('#strength').css({
      backgroundColor: '#009900'
    });
    $('#strength').html('很强');
    $('#middle').html('');
    $('#weak').html('');
  } else if (num == -1) {
    $('#weak').css({
      backgroundColor: '#ffcc33'
    });
    $('#middle').css({
      backgroundColor: '#ffcc33'
    });
    $('#strength').css({
      backgroundColor: ''
    });
    $('#weak').html('');
    $('#middle').html('中');
    $('#strength').html('');
  } else if (num == 0) {
    $('#weak').css({
      backgroundColor: '#dd0000'
    });
    $('#middle').css({
      backgroundColor: ''
    });
    $('#strength').css({
      backgroundColor: ''
    });
    $('#weak').html('弱');
    $('#middle').html('');
    $('#strength').html('');
  } else {
    $('#weak').html(' ');
    $('#middle').html(' ');
    $('#strength').html(' ');
    $('#weak').css({
      backgroundColor: ''
    });
    $('#middle').css({
      backgroundColor: ''
    });
    $('#strength').css({
      backgroundColor: ''
    });
  }
} < /script>

以上这篇js实现密码强度检测【附示例】就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery 简单的进度条实现代码
Mar 11 Javascript
javascript 函数参数限制说明
Nov 19 Javascript
JS获取后台Cookies值的小例子
Mar 04 Javascript
jQuery模拟超链接点击效果代码
Apr 21 Javascript
js抽奖实现随机抽奖代码效果
Dec 02 Javascript
node.js中的fs.lchmod方法使用说明
Dec 16 Javascript
js动态切换图片的方法
Jan 20 Javascript
AngularJs 60分钟入门基础教程
Apr 03 Javascript
js时间比较 js计算时间差的简单实现方法
Aug 26 Javascript
BootStrap table删除指定行的注意事项(笔记整理)
Feb 05 Javascript
angular.js指令中transclude选项及ng-transclude指令详解
May 24 Javascript
vue-cli webpack模板项目搭建及打包时路径问题的解决方法
Feb 26 Javascript
原生javascript实现的一个简单动画效果
Mar 30 #Javascript
纯js代码制作的网页时钟特效【附实例】
Mar 30 #Javascript
JS 实现倒计时数字时钟效果【附实例代码】
Mar 30 #Javascript
详解JavaScript for循环中发送AJAX请求问题
Jun 23 #Javascript
Jquery判断form表单数据是否变化
Mar 30 #Javascript
基于javascript实现tab选项卡切换特效调试笔记
Mar 30 #Javascript
javascript实现数字倒计时特效
Mar 30 #Javascript
You might like
使用sockets:从新闻组中获取文章(三)
2006/10/09 PHP
php牛逼的面试题分享
2013/01/18 PHP
PHP实现图片压缩的两则实例
2014/07/19 PHP
PHP培训要多少钱
2017/06/06 PHP
Javascript的闭包
2009/12/31 Javascript
JQuery 选择器、过滤器介绍
2011/02/14 Javascript
Jquery的hide及toggle方法让超链接慢慢消失
2013/09/06 Javascript
JSON 数字排序多字段排序介绍
2013/09/18 Javascript
js去除空格的12种实用方法
2013/11/08 Javascript
javaScript如何处理从java后台返回的list
2014/04/24 Javascript
每日十条JavaScript经验技巧(二)
2016/06/23 Javascript
学好js,这些js函数概念一定要知道【推荐】
2017/01/19 Javascript
JS解决position:sticky的兼容性问题的方法
2017/10/17 Javascript
vue scroller返回页面记住滚动位置的实例代码
2018/01/29 Javascript
垃圾回收器的相关知识点总结
2018/05/13 Javascript
解决Mac下安装nmp的淘宝镜像失败问题
2018/05/16 Javascript
Vue页面骨架屏的实现方法
2018/05/22 Javascript
jQuery实现网页拼图游戏
2020/04/22 jQuery
JavaScript使用Math.random()生成简单的验证码
2019/01/21 Javascript
微信小程序利用swiper+css实现购物车商品删除功能
2019/03/06 Javascript
[14:21]VICI vs EG (BO3)
2018/06/07 DOTA
python简单猜数游戏实例
2015/07/09 Python
python http接口自动化脚本详解
2018/01/02 Python
Python3实现购物车功能
2018/04/18 Python
对python 各种删除文件失败的处理方式分享
2018/04/24 Python
Python操作Oracle数据库的简单方法和封装类实例
2018/05/07 Python
PyQt5内嵌浏览器注入JavaScript脚本实现自动化操作的代码实例
2019/02/13 Python
详解Python中string模块除去Str还剩下什么
2020/11/30 Python
德国家具购物网站:Möbel Höffner
2019/08/26 全球购物
DTD的含义以及作用
2014/01/26 面试题
预备党员入党思想汇报
2014/01/04 职场文书
简历自我评价模版
2014/01/31 职场文书
迟到检讨书500字
2014/02/05 职场文书
投资合作协议书
2014/04/17 职场文书
活动总结格式
2014/08/30 职场文书
党的群众路线教育实践活动对照检查材料(个人)
2014/09/24 职场文书