1. 程式人生 > 其它 >身份證獲取年月日、年齡、性別

身份證獲取年月日、年齡、性別

/**
 * @description 根據身份證獲取一些資訊(出生日期,性別,年齡)
 * @param UUserCard: null 身份證號
 * @param num: null 1表示獲取出生日期,2表示獲取性別,3表示獲取年齡
 **/
function IdCard(UUserCard, num) {
    if (num == 1) {
        //獲取出生日期
        var birth = UUserCard.substring(6, 10) + "-" + UUserCard.substring(10, 12) + "-" + UUserCard.substring(12, 14);
        return birth;
    }
    if (num == 2) {
        //獲取性別
        if (parseInt(UUserCard.substr(16, 1)) % 2 == 1) {
            //男
            return "男";
        } else {
            //女
            return "女";
        }
    }
    if (num == 3) {
        //獲取年齡
        var myDate = new Date();
        var month = myDate.getMonth() + 1;
        var day = myDate.getDate();
        var age = myDate.getFullYear() - UUserCard.substring(6, 10) - 1;
        if (UUserCard.substring(10, 12) < month || UUserCard.substring(10, 12) == month && UUserCard.substring(12, 14) <= day) {
            age++;
        }
        return age;
    }
}

使用方法 
IdCard('440115246358743584','1')    // 獲取當前身份證 年月日
IdCard('440115246358743584','2')   //性別
IdCard('440115246358743584','3')  //年齡