[导入]检验密码强度的JS类

<script type="text/javascript">
      
var PasswordStrength ={
         Level : [
"高,实在是高","还行啦","靠,这样也行"],
          LevelValue : [
30,20,0],//强度值
          Factor : [1,2,5],//字符加数,分别为字母,数字,其它
         KindFactor : [0,0,10,20],//密码含几种组成的加数 
        Regex : [/[a-zA-Z]/g,/\d/g,/[^a-zA-Z0-9]/g] //字符正则数字正则其它正则
        }
        PasswordStrength.StrengthValue 
= function(pwd)
    
{
           
var strengthValue = 0;
           
var ComposedKind = 0;
            
for(var i = 0 ; i < this.Regex.length;i++)
           
{
             
var chars = pwd.match(this.Regex[i]);
             
if(chars != null)
              
{
                strengthValue 
+= chars.length * this.Factor[i];
               ComposedKind 
++;
             }

         }

         strengthValue 
+= this.KindFactor[ComposedKind];
           
return strengthValue;
      }
 
        PasswordStrength.StrengthLevel 
= function(pwd)
      
{
           
var value = this.StrengthValue(pwd);
           
for(var i = 0 ; i < this.LevelValue.length ; i ++)
          
{
                
if(value >= this.LevelValue[i] )
                   
return this.Level[i];
         }

       }

       
        alert(PasswordStrength.StrengthLevel(
"23")); 
        alert(PasswordStrength.StrengthLevel(
"abcd123"));     
        alert(PasswordStrength.StrengthLevel(
"abcd!%23"));  
    
</script>

    文章来源:http://blog.163.com/fengmk2/blog/static/891324020069212330624
    posted @ 2006-10-02 01:24  MK2  阅读(187)  评论(0编辑  收藏  举报