js-신분증 검사
function card(a) {
var b = " , 440106198202020555";
if (!a) return " , 440106198202020555";
if (!/^[0-9xX]+$/.test(a)) return b;
if (15 !== a.length && 18 !== a.length) return b;
var c, d, e, f, g, h, i = {
11 : " ",
12 : " ",
13 : " ",
14 : " ",
15 : " ",
21 : " ",
22 : " ",
23 : " ",
31 : " ",
32 : " ",
33 : " ",
34 : " ",
35 : " ",
36 : " ",
37 : " ",
41 : " ",
42 : " ",
43 : " ",
44 : " ",
45 : " ",
46 : " ",
50 : " ",
51 : " ",
52 : " ",
53 : " ",
54 : " ",
61 : " ",
62 : " ",
63 : " ",
64 : " ",
65 : " ",
71 : " ",
81 : " ",
82 : " ",
91 : " "
},
j = a.split("");
if (null == i[parseInt(a.substr(0, 2), 10)]) return b;
switch (a.length) {
case 15:
e = 0 === (parseInt(a.substr(6, 2), 10) + 1900) % 4 || 0 === (parseInt(a.substr(6, 2), 10) + 1900) % 100 && 0 == (parseInt(a.substr(6, 2), 10) + 1900) % 4 ? /^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}$/: /^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}$/,
e.test(a) || (h = b);
break;
case 18:
e = 0 === parseInt(a.substr(6, 4), 10) % 4 || 0 === parseInt(a.substr(6, 4), 10) % 100 && 0 === parseInt(a.substr(6, 4), 10) % 4 ? /^[1-9][0-9]{5}(19|20)[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}[0-9Xx]$/: /^[1-9][0-9]{5}(19|20)[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}[0-9Xx]$/,
e.test(a) ? (f = 7 * (parseInt(j[0], 10) + parseInt(j[10], 10)) + 9 * (parseInt(j[1], 10) + parseInt(j[11], 10)) + 10 * (parseInt(j[2], 10) + parseInt(j[12], 10)) + 5 * (parseInt(j[3], 10) + parseInt(j[13], 10)) + 8 * (parseInt(j[4], 10) + parseInt(j[14], 10)) + 4 * (parseInt(j[5], 10) + parseInt(j[15], 10)) + 2 * (parseInt(j[6], 10) + parseInt(j[16], 10)) + parseInt(j[7], 10) + 6 * parseInt(j[8], 10) + 3 * parseInt(j[9], 10), c = f % 11, g = "F", d = "10X98765432", g = d.substr(c, 1), g != j[17].toUpperCase() && (h = b)) : h = b
}
return h || !0
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.