flex 身份证验证

来源:互联网 发布:jquery遍历json集合 编辑:程序博客网 时间:2024/06/04 08:17
private function isIdCard(ss:String):Boolean
{
var paritybit:Array = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'];    
var power_list:Array = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];    
var s:String = ss.toUpperCase().toString();   
var power:Number = 0;    

for(var i:int=0;i<s.length;i++)
{

if(i==s.length-1 && s.charAt(i)=="X")
{       
break;     
}

if(s.charAt(i)<'0'||s.charAt(i)>'9')
{     
return false;    
}    

if(i<s.length-1)
{
power += Number(s.charAt(i)) * power_list[i];    
}
}

var date:Date = new Date();    
var year:Number = Number(s.substring(6,10));   
if(year<1900||year>date.fullYear)
{
return false;
}

var month:Number = Number(s.substring(10,12));    
if(month<1 ||month>12)
{
    return false;        
}    

var day:Number = Number(s.substring(12,14));    
if(day<1||day>31)
{    
 return false;     
}   
return s.charAt(s.length - 1) == paritybit[power % 11];

}
0 0