貼代碼,拿上就可以直接使用:
通過這個函數,稍微修改下,還可以根據身份證號,獲取年紀
1 /** 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 }
說明:
這個是從網上找的代碼,自己稍微修改了一下。
網上的代碼有個錯誤,獲取日期的時候用的 myDate.getDay()getDay() 這個是獲取星期的 0-6,不是獲取日期的。
getDate() 這個才是獲取 日期的