1.js正則判斷身份證號是否正確
以下是一個簡單的 JavaScript 函數(shù),使用正則表達(dá)式來驗證身份證號碼的格式是否正確:
function isValidIDCard(idCard) {
// 身份證正則表達(dá)式
var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
return reg.test(idCard);
}
上述代碼僅僅是驗證了身份證號碼的格式是否正確,而并沒有驗證身份證號碼本身是否合法。如果需要驗證身份證號碼的合法性,可以使用第三方庫或者在線服務(wù)。?文章來源:http://www.zghlxwxcb.cn/news/detail-593688.html
console.log(isValidIDCard('110101199003072733')); // true
console.log(isValidIDCard('11010119900307273X')); // true
console.log(isValidIDCard('1101011990030727')); // false
console.log(isValidIDCard('110101199003072734')); // false
2.js使用正則判斷當(dāng)前身份證號是否是22歲
要判斷身份證號碼是否對應(yīng)一個 22 歲的人,需要先獲取身份證號碼中的出生日期,然后計算出此人的年齡,最后與 22 進(jìn)行比較。文章來源地址http://www.zghlxwxcb.cn/news/detail-593688.html
function is22YearsOld(idCard) {
// 獲取身份證號碼中的出生日期
var birth = idCard.match(/^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})(\d|X)$/);
if (birth == null) {
// 身份證號碼格式不正確,直接返回 false
return false;
}
var year = birth[2];
var month = birth[3];
var day = birth[4];
// 計算此人的出生日期
var birthday = new Date(year + '-' + month + '-' + day);
// 計算此人的年齡
var age = new Date().getFullYear() - birthday.getFullYear();
if (new Date().getMonth() < birthday.getMonth() ||
(new Date().getMonth() == birthday.getMonth() && new Date().getDate() < birthday.getDate())) {
age--;
}
// 判斷此人的年齡是否等于 22
return age === 22;
// 判斷此人年齡是否小于 22
return age < 22;
}
console.log(is22YearsOld('110101200102151234')); // true
console.log(is22YearsOld('110101199912312345')); // false
到了這里,關(guān)于js正則對身份證號的判斷的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!