JS根据身份证号码精确计算年龄和性别

 1 /**
 2  * 根据身份证号得到姓别和精确计算年龄
 3  */
 4 function analyzeIDCard(IDCard){
 5     var sexAndAge = {};
 6     //获取用户身份证号码
 7     var userCard = IDCard;
 8     //如果身份证号码为undefind则返回空
 9     if(!userCard){
10         return sexAndAge;
11     }
12     //获取性别
13     if(parseInt(userCard.substr(16,1)) % 2 == 1){
14         sexAndAge.sex = ‘1(男)‘
15     }else{
16         sexAndAge.sex = ‘0(女)‘
17     }
18     //获取出生年月日
19     //userCard.substring(6,10) + "-" + userCard.substring(10,12) + "-" + userCard.substring(12,14);
20     var yearBirth = userCard.substring(6,10);
21     var monthBirth = userCard.substring(10,12);
22     var dayBirth = userCard.substring(12,14);
23     //获取当前年月日并计算年龄
24     var myDate = new Date();
25     var monthNow = myDate.getMonth() + 1;
26     var dayNow = myDate.getDay();
27     var age = myDate.getFullYear() - yearBirth;
28     if(monthNow < monthBirth || (monthNow == monthBirth && dayNow < dayBirth)){
29         age--;
30     }
31     //得到年龄
32     sexAndAge.age = age;
33     //返回性别和年龄
34     return sexAndAge;
35 }
36
37 /*测试*/
38 var ID = analyzeIDCard(‘510612199004174732‘);
39 console.info(ID);

原文地址:https://www.cnblogs.com/j120zjb/p/8984455.html

时间: 2024-08-04 19:22:37

JS根据身份证号码精确计算年龄和性别的相关文章

(c#)如果添加的字段中已经有了身份证号码,则年龄和性别和出生年月可得

//把界面文本框里面的身份证号进行提取,以二代身份证为例 model.eCardId = txt_cardNo.Text; //从身份证号里面提取想要的字符串 //120429199110062568 string s = model.eCardId; string t = s.Substring(6,8); string l = s.Substring(6,4); //年月日的提取 string i = s.Substring(6, 4); string j = s.Substring(10,

根据身份证号码自动获取出生日期,性别,籍贯

Q1:数据库 由于数据有点多,我们在这就不展示了(需要的联系我,我发给你) i 这是里面所用到的一些架包,包等等.相信大家对这一块都已经了解了,我就不说废话了. Q2:html文件 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <s

C#根据身份证号码,计算生日、年龄、性别

朋友谈及身份证相关的信息,才了解到原来省份证号码中包含了年龄和性别. 这样在数据库中,就不必单独留字段存放它们了(不过,要根据具体情况来,要是读取频率较高,还是单独列出为好),这样顺带解决了年龄变更的问题. 程序仅仅为了实现这个功能,里面还是需要数据验证的,用户输入的信息,毕竟在猿类看来,都是“非法的”.废话不多说了,贴上我写的程序,还请路过的大神斧正: using System; using System.Collections.Generic; using System.Linq; usin

JS根据身份证号码算年龄

如果把身份证号码传到页面上,在前端页面获取年龄就需要用到JS脚本了: function GetAge(identityCard) { var len = (identityCard + "").length; if (len == 0) { return 0; } else { if ((len != 15) && (len != 18))//身份证号码只能为15位或18位其它不合法 { return 0; } } var strBirthday = "&qu

Java 根据年月日精确计算年龄

1 import java.text.SimpleDateFormat; 2 import java.util.Calendar; 3 import java.util.Date; 4 5 /** 6 * Created by qing on 2017/3/28. 7 */ 8 public class AgeUtils { 9 // 根据年月日计算年龄,birthTimeString:"1994-11-14" 10 public static int getAgeFromBirthT

js验证身份证号码是否合规

需求:最近要做实名验证的功能,但是验证身份证号码和身份证图片的接口不想短信,比较贵,所以之前我们要验证严谨一点,参考了网上关于验证身份证号码的代码,总结一下 代码: //验证身份证号码 function checkIDNumber(code){ /* 根据[中华人民共和国国家标准 GB 11643-1999]中有关公民身份号码的规定,公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成.排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码. 地址

JS校验身份证号码

var vcity = { 11: "北京", 12: "天津", 13: "河北", 14: "山西", 15: "内蒙古", 21: "辽宁", 22: "吉林", 23: "黑龙江", 31: "上海", 32: "江苏", 33: "浙江", 34: "安徽",

输入身份证号码自动读取生日与性别(delphi)

一.格式介绍: [15位号码格式] 1.第l一6位数为行政区划代码; 2.第7-12位数为出生日期代码; 3.第13---15位数为分配顺序代码; (1).行政区划代码,是指公民第一次申领居民身份证时的常住户口所在地的行政地区. (2).出生日期代码,第7-8位数代表年份(年份前面二位数省略),第9-10位数代表月份(月份为l位数的前面加零).第11一12位数代表日期(日期为1位数的前面加零). (3).分配顺序代码,是按人口数统一合理分配以固定顺序给予每个人的顺序号,最末一位数是奇数的分配给男

[笔记]根据二代居名身份证号码判断一个人的性别

身份证性别判定标准: 1.如果是15位的号码,根据最末位的奇偶数判断,双数为"女",单数为"男" 2.如果是18位的号码,根据号码的倒数第二位的奇偶数判断,双数为"女",单数为"男". 1 import java.util.Scanner; 2 public class GetSexById { 3 public static void sex(){ 4 Scanner ch=new Scanner(System.in); 5 System.out.println("请输入一个有效的身份证号码: