日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JS身份证号校验

發(fā)布時間:2023/12/14 javascript 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JS身份证号校验 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

JS身份證號校驗

法一:
var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/; if(reg.test(idCard) === false) {Base.alert("身份證輸入不合法");return false; }
法二:
if(idCard.length==18){var idCard_string = JSON.stringify(idCard);var spstr = idCard_string.split("");var x = spstr[spstr.length - 2];console.log(spstr)if (x === "x") {Base.alert("身份證號最后一位X為大寫", "error");return false;}var reg = new RegExp(/^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$/);var arrSplit = idCard.match(reg); //檢查生日日期是否正確,value就是身份證號if (!arrSplit) {Base.alert("身份證號格式有問題,請重新輸入", "error");return false;}var dtmBirth = new Date(arrSplit[2] + "/" + arrSplit[3] + "/" + arrSplit[4]);var bGoodDay;bGoodDay = (dtmBirth.getFullYear() == Number(arrSplit[2])) && ((dtmBirth.getMonth() + 1) == Number(arrSplit[3])) && (dtmBirth.getDate() == Number(arrSplit[4]));if (!bGoodDay) {Base.alert("輸入的身份證號里出生日期不對!", "error");return false;} else { //檢驗18位身份證的校驗碼是否正確。 //校驗位按照ISO 7064:1983.MOD 11-2的規(guī)定生成,X可以認(rèn)為是數(shù)字10。var valnum;var arrInt = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2);var arrCh = new Array('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2');var nTemp = 0, i;for (i = 0; i < 17; i++) {nTemp += idCard.substr(i, 1) * arrInt[i];}valnum = arrCh[nTemp % 11];if (valnum != idCard.substr(17, 1)) {Base.alert("18位身份證的校驗碼不正確!應(yīng)該為:" + valnum, "error");return false;}return true;}

總結(jié)

以上是生活随笔為你收集整理的JS身份证号校验的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。