javascript来判断密码强度

// 应客户的需求的,对密码进行强度的判断。首先,该密码的强度的判断不是网上常常出现的那种一边输入一边判断强度,而是密码从数据库里读出后影藏在前端页面里;其次,其实我也是在网上抄袭了一段,稍微修改了一下。

$(document).ready(function() {  
   
  checkStrong();     // 页面自动加载完成后调用该函数;下面有对该函数的具体定义.
  
 });

 

// js 检测密码的安全度********start*********
  //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() 
 {  
  var sPW = $("#sPW_PASSWD").val();    // html页面里影藏从数据库读取的密码;
      if (sPW.length<=4)  
          return 0; //密码太短  
          Modes=0;  
      for (i=0; i<sPW.length; i++) 
      {  
          //测试每一个字符的类别并统计一共有多少种模式.  
          Modes|=CharMode(sPW.charCodeAt(i));      // 调用上面的CharMode函数
      }  
      var pwd_strong = bitTotal(Modes);    //  调用上面的CharMode函数  输出是2
      if(pwd_strong == '1')
      {
       $("#pwd_color").removeClass().addClass("red_bar fl");   // 添加样式 用于提醒
       $("#pwd_str").html("弱");
      }
      else if(pwd_strong == '2')
      {
       $("#pwd_color").removeClass().addClass("blue_bar fl");
       $("#pwd_str").html("中");
      }
      else
      {
       $("#pwd_color").removeClass().addClass("green_bar fl");
       $("#pwd_str").html("强");
      }
      return bitTotal(Modes);  
  }  
  // js 检测密码的安全度********end***********

 

html 代码

<input type="hidden" name="sPW_PASSWD" id="sPW_PASSWD" value="<{$res.PASSWD}>" />

<p class="fl">当前密码安全度:</p >
<p id="pwd_color" class="blue_bar fl">&nbsp;</p><span id="pwd_str"></span>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值