/** 2 * 根据身份证号得到姓别和精确计算年龄 3 */ 4 function analyzeIDCard(IDCard){ 5 //获取用户身份证号码 6 var userCard = IDCard; 7 //如果身份证号码为undefind则返回空 8 if(!userCard){ 9 return false; 10 } 11 //获取出生年月日 12 var yearBirth = userCard.substring(6,10); 13 var monthBirth = userCard.substring(10,12); 14 var dayBirth = userCard.substring(12,14); 15 //获取当前年月日并计算年龄 16 var myDate = new Date(); 17 var monthNow = myDate.getMonth() + 1; 18 var dayNow = myDate.getDate(); 19 var age = myDate.getFullYear() - yearBirth; 20 if(monthNow < monthBirth || (monthNow == monthBirth && dayNow < dayBirth)){ 21 age--; 22 } 23 if (age >= 18) { return true; } 24 return false; 25 }