用Javascript评估用户输入密码的强度实现代码


Posted in Javascript onNovember 30, 2011

1.如果密码少于5位,那么就认为这是一个弱密码。
2.如果密码只由数字、小写字母、大写字母或其它特殊符号当中的一种组成,则认为这是一个弱密码。
3.如果密码由数字、小写字母、大写字母或其它特殊符号当中的两种组成,则认为这是一个中度安全的密码。
4.如果密码由数字、小写字母、大写字母或其它特殊符号当中的三种以上组成,则认为这是一个比较安全的密码。

<script language="javascript"> 
//CharMode函数 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; //checkStrong函数 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); //pwStrength函数 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.getElementByIdx_x("strength_L").style.background=Lcolor; 
document.getElementByIdx_x("strength_M").style.background=Mcolor; 
document.getElementByIdx_x("strength_H").style.background=Hcolor; 
return; </script> 
<form name=form1 action="" > 
输入密码:<input type="password" size="10" onKeyUp="pwStrength(this.value)" onBlur="pwStrength(this.value)"> 
<br>密码强度: 
<table width="217" border="1" cellspacing="0" cellpadding="1" 
bordercolor="#cccccc" height="23" style='display:inline'> 
<tr align="center" bgcolor="#eeeeee"> 
<td width="33%" id="strength_L">弱</td> 
<td width="33%" id="strength_M">中</td> 
<td width="33%" id="strength_H">强</td> 
</tr> 
</table> 
</form>
Javascript 相关文章推荐
javascript 定义初始化数组函数
Sep 07 Javascript
JS打开图片另存为对话框实现代码
Dec 26 Javascript
js取消单选按钮选中示例代码
Nov 14 Javascript
jQuery获取同级元素的简单代码
Jul 09 Javascript
详解JS中定时器setInterval和setTImeout的this指向问题
Jan 06 Javascript
jQuery的三种bind/One/Live/On事件绑定使用方法
Feb 23 Javascript
jQuery操作DOM_动力节点Java学院整理
Jul 04 jQuery
js 事件的传播机制(实例讲解)
Jul 20 Javascript
微信小程序开发教程之增加mixin扩展
Aug 09 Javascript
Vue.js 实现地址管理页面思路详解(地址添加、编辑、删除和设置默认地址)
Dec 11 Javascript
vue相关配置文件详解及多环境配置详细步骤
May 19 Javascript
JavaScript实现像雪花一样的Hexaflake分形
Jul 07 Javascript
用Javascript评估用户输入密码的强度(Knockout版)
Nov 30 #Javascript
Ubuntu 11.10 安装Node.js的方法
Nov 30 #Javascript
JavaScript中数组的排序、乱序和搜索实现代码
Nov 30 #Javascript
js常用代码段整理
Nov 30 #Javascript
firebug的一个有趣现象介绍
Nov 30 #Javascript
兼容IE、FireFox、Chrome等浏览器的xml处理函数js代码
Nov 30 #Javascript
Javascript的getYear、getFullYear、getUTCFullYear异同分享
Nov 30 #Javascript
You might like
基于mysql的bbs设计(一)
2006/10/09 PHP
php 数组的创建、调用和更新实现代码
2009/03/09 PHP
php面向对象全攻略 (八)重载新的方法
2009/09/30 PHP
php 获取一个月第一天与最后一天的代码
2010/05/16 PHP
PHP中new static()与new self()的区别异同分析
2014/08/22 PHP
解析WordPress中控制用户登陆和判断用户登陆的PHP函数
2016/03/01 PHP
php判断文件上传图片格式的实例详解
2017/09/30 PHP
PHP检查端口是否可以被绑定的方法示例
2018/08/09 PHP
js截取函数(indexOf,join等)
2010/09/01 Javascript
JQuery的AJAX实现文件下载的小例子
2013/05/15 Javascript
基于jquery实现的省市区级联无ajax
2013/09/24 Javascript
jQuery获取和设置表单元素的方法
2014/02/14 Javascript
JQuery中两个ul标签的li互相移动实现方法
2015/05/18 Javascript
javascript控制图片播放的实现代码
2020/07/29 Javascript
基于JavaScript实现移动端点击图片查看大图点击大图隐藏
2015/11/04 Javascript
轻松学习jQuery插件EasyUI EasyUI创建菜单与按钮
2015/11/30 Javascript
用NODE.JS中的流编写工具是要注意的事项
2016/03/01 Javascript
VUEJS实战之构建基础并渲染出列表(1)
2016/06/13 Javascript
详解Vue2+Echarts实现多种图表数据可视化Dashboard(附源码)
2017/03/21 Javascript
原生JS实现圆环拖拽效果
2017/04/07 Javascript
微信小程序开发之从相册获取图片 使用相机拍照 本地图片上传
2017/04/18 Javascript
JavaScript数据结构之单链表和循环链表
2017/11/28 Javascript
Angular父子组件通过服务传参的示例方法
2018/10/31 Javascript
js实现的订阅发布者模式简单示例
2020/03/14 Javascript
Python pygorithm模块用法示例【常见算法测试】
2018/08/16 Python
Python 支付整合开发包的实现
2019/01/23 Python
python3利用ctypes传入一个字符串类型的列表方法
2019/02/12 Python
浅谈Python小波分析库Pywavelets的一点使用心得
2019/07/09 Python
如何用Anaconda搭建虚拟环境并创建Django项目
2020/08/02 Python
css3 pointer-events 介绍详解
2017/09/18 HTML / CSS
财产公证书样本
2014/04/04 职场文书
护理专科学生自荐书
2014/07/05 职场文书
教师遵守党的政治纪律情况对照检查材料
2014/09/26 职场文书
侵犯商业秘密的律师函
2015/05/27 职场文书
python3实现常见的排序算法(示例代码)
2021/07/04 Python
MySQL中dd::columns表结构转table过程及应用详解
2022/09/23 MySQL