JS-身分証番号によって日付性別年齢を取得します.
1366 ワード
個人最適化後のツール関数を簡単に記録します.必要な学生は自分でコピーできます.
話を多くしないで、コードをつけます.
話を多くしないで、コードをつけます.
/**
* @description
* @param {String} idCard -
* @param {Number} analyseType - (birthDate- sex- age- )
* @return {String}
*/
function getAnalysisIdCard(idCard = '', analyseType) {
const analyseObj = {
"birthDate": (idCard) => {
//
const birth = `${idCard.substring(6, 10)}-${idCard.substring(10, 12)}-${idCard.substring(12, 14)}`
return birth;
},
"sex": (idCard) => {
//
const sex = parseInt(idCard.substr(16, 1)) % 2 === 1 ? " " : " " ;
return sex;
},
"age": (idCard) => {
// ( , )
const myDate = new Date(),
month = myDate.getMonth() + 1,
day = myDate.getDate();
let age = myDate.getFullYear() - idCard.substring(6, 10) - 1;
if (idCard.substring(10, 12) < month || idCard.substring(10, 12) == month && idCard.substring(12, 14) <= day) {
age++;
}
return age;
},
}
if (!analyseObj[analyseType]) {
throw new Error(' !')
}
return analyseObj[analyseType](idCard)
}
ありがとうございます.zzzZ.