身份证号码是每个人独一无二的身份标识,但在实际使用中难免会出现输入错误或格式问题。那么如何用JavaScript来验证身份证号码是否正确呢?👀
首先,我们需要了解身份证号码的基本规则:中国大陆的身份证由18位数字组成,前17位为数字,最后一位可以是数字或字母X。通过校验码算法,我们可以初步判断其合法性。✅
以下是简单的代码示例👇:
```javascript
function validateIdCard(id) {
const reg = /^[1-9]\d{5}(18|19|20)?\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;
if (!reg.test(id)) return false;
// 校验码计算逻辑
const factor = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];
let sum = 0;
for (let i = 0; i < 17; i++) {
sum += parseInt(id[i], 10) factor[i];
}
const checkCode = '0123456789X'.charAt(sum % 11);
return id[17].toUpperCase() === checkCode;
}
```
运行这段代码,即可轻松判断身份证号码是否正确!🌟
如果发现错误,请及时修正,避免不必要的麻烦哦!💪