随心的博客

好记性不如个烂笔头,随心记录!

返回顶部

Js函数:根据身份证号码判断年龄是否大于18岁

 
贴代码,拿上就可以直接使用:
通过这个函数,稍微修改下,还可以根据身份证号,获取年纪
 
 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() 这个才是获取 日期的

posted @ 2021-09-12 17:19  yangphp  阅读(2262)  评论(0编辑  收藏  举报