当前位置: 首页 > news >正文

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 = "";
    if (len == 18)//处理18位的身份证号码从号码中得到生日和性别代码
    {
        strBirthday = identityCard.substr(6, 4) + "/" + identityCard.substr(10, 2) + "/" + identityCard.substr(12, 2);
    }
    if (len == 15) {
        strBirthday = "19" + identityCard.substr(6, 2) + "/" + identityCard.substr(8, 2) + "/" + identityCard.substr(10, 2);
    }
    //时间字符串里,必须是“/”
    var birthDate = new Date(strBirthday);
    var nowDateTime = new Date();
    var age = nowDateTime.getFullYear() - birthDate.getFullYear();
    if (nowDateTime.getMonth() < birthDate.getMonth() || (nowDateTime.getMonth() == birthDate.getMonth() && nowDateTime.getDate() < birthDate.getDate())) {
        age--;
    }
    return age;
}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • RPC服务和HTTP服务对比
  • SFTP秘钥的方式登录与LFTP
  • IDEA 设置自动生成代码
  • IDEA光标上一次位置快捷键
  • VxBox网络设置
  • ifconfig不是内部命令
  • gitlab docker 安装
  • jenkins docker 安装
  • postgres docker 安装
  • jenkins配置sonarqube
  • Session会话技术介绍
  • 矩阵论(零):线性代数基础知识整理(1)——逆矩阵、(广义)初等变换、满秩分解
  • 矩阵论(一):广义逆矩阵(上)
  • 矩阵论(零):线性代数基础知识整理(4)——线性空间与线性变换
  • 矩阵论(五):矩阵的正定性
  • #Java异常处理
  • (ckeditor+ckfinder用法)Jquery,js获取ckeditor值
  • 3.7、@ResponseBody 和 @RestController
  • Android框架之Volley
  • idea + plantuml 画流程图
  • Java 内存分配及垃圾回收机制初探
  • Mac 鼠须管 Rime 输入法 安装五笔输入法 教程
  • Puppeteer:浏览器控制器
  • Spring Cloud(3) - 服务治理: Spring Cloud Eureka
  • webgl (原生)基础入门指南【一】
  • 大整数乘法-表格法
  • 前嗅ForeSpider教程:创建模板
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 网页视频流m3u8/ts视频下载
  • 问:在指定的JSON数据中(最外层是数组)根据指定条件拿到匹配到的结果
  • 怎么将电脑中的声音录制成WAV格式
  • 走向全栈之MongoDB的使用
  • Android开发者必备:推荐一款助力开发的开源APP
  • 基于django的视频点播网站开发-step3-注册登录功能 ...
  • ​十个常见的 Python 脚本 (详细介绍 + 代码举例)
  • #考研#计算机文化知识1(局域网及网络互联)
  • (2)STL算法之元素计数
  • (Java入门)学生管理系统
  • (Java实习生)每日10道面试题打卡——JavaWeb篇
  • (板子)A* astar算法,AcWing第k短路+八数码 带注释
  • (附源码)ssm高校升本考试管理系统 毕业设计 201631
  • (过滤器)Filter和(监听器)listener
  • (十一)c52学习之旅-动态数码管
  • (四)搭建容器云管理平台笔记—安装ETCD(不使用证书)
  • (转)德国人的记事本
  • *++p:p先自+,然后*p,最终为3 ++*p:先*p,即arr[0]=1,然后再++,最终为2 *p++:值为arr[0],即1,该语句执行完毕后,p指向arr[1]
  • ..thread“main“ com.fasterxml.jackson.databind.JsonMappingException: Jackson version is too old 2.3.1
  • .bat批处理(一):@echo off
  • .desktop 桌面快捷_Linux桌面环境那么多,这几款优秀的任你选
  • .NET “底层”异步编程模式——异步编程模型(Asynchronous Programming Model,APM)...
  • .NET CLR基本术语
  • .net和php怎么连接,php和apache之间如何连接
  • .NET连接数据库方式
  • @entity 不限字节长度的类型_一文读懂Redis常见对象类型的底层数据结构
  • [000-01-011].第2节:持久层方案的对比