根据身份证获取生日、性别、年龄

当type=1时获取出生日期,type=2时获取性别,type=3时获取年龄

javascript 复制代码
 /*
    * 当type=1时获取出生日期,type=2时获取性别,type=3时获取年龄
    * */ 
function IdCard(IdCard, type) {
        if (type === 1) {
            //获取出生日期
            let birthday = IdCard.substring(6, 10) + "-" + IdCard.substring(10, 12) + "-" + IdCard.substring(12, 14)
            return birthday
        }
        if (type === 2) {
            //获取性别
            if (parseInt(IdCard.substr(16, 1)) % 2 === 1) {
                return 1 //男
            } else {
                return 2 //女
            }
        }
        if (type === 3) {
            //获取年龄
            var ageDate = new Date()
            var month = ageDate.getMonth() + 1
            var day = ageDate.getDate()
            var age = ageDate.getFullYear() - IdCard.substring(6, 10) - 1
            if (IdCard.substring(10, 12) < month || IdCard.substring(10, 12) === month && IdCard.substring(12, 14) <= day) {
                age++
            }
            if (age <= 0) {
                age = 1
            }
            return age
        }
}

给大家推荐一个实用面试题库

1、前端面试题库 (面试必备) 推荐:★★★★★

地址:前端面试题库

相关推荐
Leo655356 小时前
JDK8 的排序、分组求和,转换为Map
java·开发语言
Filotimo_6 小时前
2.CSS3.(2).html
前端·css
磨十三7 小时前
C++ 标准库排序算法 std::sort 使用详解
开发语言·c++·排序算法
yinuo7 小时前
uniapp微信小程序华为鸿蒙定时器熄屏停止
前端
gnip8 小时前
vite中自动根据约定目录生成路由配置
前端·javascript
两只程序猿8 小时前
数据可视化 | Violin Plot小提琴图Python实现 数据分布密度可视化科研图表
开发语言·python·信息可视化
野生技术架构师8 小时前
1000 道 Java 架构师岗面试题
java·开发语言
湫兮之风9 小时前
C++: Lambda表达式详解(从入门到深入)
开发语言·c++
Porunarufu9 小时前
JAVA·顺序逻辑控制
java·开发语言
前端橙一陈9 小时前
LocalStorage Token vs HttpOnly Cookie 认证方案
前端·spring boot