从身份证号码中获取信息在JavaScript中可以通过正则表达式和一些逻辑处理来实现。身份证号码是中国公民的唯一身份标识,它包含了出生日期、性别等信息。以下是一些基础概念和相关操作:
function getBirthDate(idNumber) {
let birthDate = '';
if (idNumber.length === 18) {
birthDate = idNumber.substring(6, 14);
} else if (idNumber.length === 15) {
birthDate = '19' + idNumber.substring(6, 12);
}
return birthDate;
}
function getGender(idNumber) {
let gender = '';
if (idNumber.length === 18) {
const genderCode = parseInt(idNumber.substring(16, 17));
gender = genderCode % 2 === 0 ? '女' : '男';
} else if (idNumber.length === 15) {
const genderCode = parseInt(idNumber.substring(14, 15));
gender = genderCode % 2 === 0 ? '女' : '男';
}
return gender;
}
校验身份证号码可以通过计算校验码来实现,以下是一个简化的校验函数:
function validateIDNumber(idNumber) {
const weights = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];
const checkCodes = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'];
if (idNumber.length !== 18) return false;
let sum = 0;
for (let i = 0; i < 17; i++) {
sum += parseInt(idNumber[i]) * weights[i];
}
const checkCode = checkCodes[sum % 11];
return checkCode === idNumber[17].toUpperCase();
}
以上代码示例仅供参考,在实际应用中可能需要根据具体需求进行调整。