1
<script type="text/javascript">
2
var PasswordStrength ={
3
Level : ["高,实在是高","还行啦","靠,这样也行"],
4
LevelValue : [30,20,0],//强度值
5
Factor : [1,2,5],//字符加数,分别为字母,数字,其它
6
KindFactor : [0,0,10,20],//密码含几种组成的加数
7
Regex : [/[a-zA-Z]/g,/\d/g,/[^a-zA-Z0-9]/g] //字符正则数字正则其它正则
8
}
9
PasswordStrength.StrengthValue = function(pwd)
10
{
11
var strengthValue = 0;
12
var ComposedKind = 0;
13
for(var i = 0 ; i < this.Regex.length;i++)
14
{
15
var chars = pwd.match(this.Regex[i]);
16
if(chars != null)
17
{
18
strengthValue += chars.length * this.Factor[i];
19
ComposedKind ++;
20
}
21
}
22
strengthValue += this.KindFactor[ComposedKind];
23
return strengthValue;
24
}
25
PasswordStrength.StrengthLevel = function(pwd)
26
{
27
var value = this.StrengthValue(pwd);
28
for(var i = 0 ; i < this.LevelValue.length ; i ++)
29
{
30
if(value >= this.LevelValue[i] )
31
return this.Level[i];
32
}
33
}
34
35
alert(PasswordStrength.StrengthLevel("23"));
36
alert(PasswordStrength.StrengthLevel("abcd123"));
37
alert(PasswordStrength.StrengthLevel("abcd!%23"));
38
</script>
39![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
3
![](/Images/OutliningIndicators/InBlock.gif)
4
![](/Images/OutliningIndicators/InBlock.gif)
5
![](/Images/OutliningIndicators/InBlock.gif)
6
![](/Images/OutliningIndicators/InBlock.gif)
7
![](/Images/OutliningIndicators/InBlock.gif)
8
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
9
![](/Images/OutliningIndicators/None.gif)
10
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
11
![](/Images/OutliningIndicators/InBlock.gif)
12
![](/Images/OutliningIndicators/InBlock.gif)
13
![](/Images/OutliningIndicators/InBlock.gif)
14
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
15
![](/Images/OutliningIndicators/InBlock.gif)
16
![](/Images/OutliningIndicators/InBlock.gif)
17
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
18
![](/Images/OutliningIndicators/InBlock.gif)
19
![](/Images/OutliningIndicators/InBlock.gif)
20
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
21
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
22
![](/Images/OutliningIndicators/InBlock.gif)
23
![](/Images/OutliningIndicators/InBlock.gif)
24
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
25
![](/Images/OutliningIndicators/None.gif)
26
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
27
![](/Images/OutliningIndicators/InBlock.gif)
28
![](/Images/OutliningIndicators/InBlock.gif)
29
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
30
![](/Images/OutliningIndicators/InBlock.gif)
31
![](/Images/OutliningIndicators/InBlock.gif)
32
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
33
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
34
![](/Images/OutliningIndicators/None.gif)
35
![](/Images/OutliningIndicators/None.gif)
36
![](/Images/OutliningIndicators/None.gif)
37
![](/Images/OutliningIndicators/None.gif)
38
![](/Images/OutliningIndicators/None.gif)
39
![](/Images/OutliningIndicators/None.gif)