메뉴 건너뛰기

조회 수 1089 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

자주 유효성체크를 하게 될 로직은 아니므로 별도로 포스팅을 합니다.

 

사업자 번호 유효성 체크하는 방법을 알아보겠습니다.

 

검증절차

ex) 사업자번호: 123-45-67891

1. 사업자 번호는 10자리이다.(숫자만 있다고 가정)

2. 인증키값으로 체크하려는 사업자번호와 연산을 한다.

   (키값 = 1 3 7 1 3 7 1 3 5)

3. 사업자번호 앞 9자리  인증키 9자리의 각 자리수를 각각 곱하여 전부 더해줍니다.

    S = (1 * 1) + (2 * 3) + (3 * 7) + (4 * 1) + (5 * 3) ...  + (9 * 5)

 

 

4. 사업자번호 뒤에서 2번째자리와 인증키 마지막 값을 곱하고 10으로 나눈 후 위의 합과 추가로 더해줍니다.

    S += 9 * 5 / 10(소수점은 제거한다.)

5. 합계를 10으로 나머지 연산을 합니다.

   S % 10 = 9

6. 10에서 나머지 연산의 값을 빼줍니다.

   10 - 9 = 1

7. 사업자번호 마지막자리와 마지막 처리한값이 같으면 사업자번호입니다.

   1 = 1 사업자번호 O

 

 

 

구현 소스

function checkCorporateRegiNumber(number){
	var numberMap = number.replace(/-/gi, '').split('').map(function (d){
		return parseInt(d, 10);
	});
	
	if(numberMap.length == 10){
		var keyArr = [1, 3, 7, 1, 3, 7, 1, 3, 5];
		var chk = 0;
		
		keyArr.forEach(function(d, i){
			chk += d * numberMap[i];
		});
		
		chk += parseInt((keyArr[8] * numberMap[8])/ 10, 10);
		console.log(chk);
		return Math.floor(numberMap[9]) === ( (10 - (chk % 10) ) % 10);
	}
	
	return false;
}

 


List of Articles
번호 제목 날짜 조회 수
247 바닐라 JS, ECMAScript 개념 file 2023.01.20 109
246 마우스 오른쪽버튼 , 드래그 선택 차단 2023.01.12 118
245 패스워드, 확인패스워드가 맞는지 체크 2023.01.12 129
244 Node.js와 npm(+ npx)의 개념 2023.01.20 134
243 비동기 작업의 원리 (JavaScript 엔진, Web API, Task Queue, Event Loop) file 2023.01.20 138
242 개발자도구 F12키 막기 file 2023.01.12 171
241 페이지 이동 2021.03.26 190
240 getYear(); 크롬, 파이어폭스 에서 제대로 작동 안하는 문제 2021.03.26 197
239 default 매개변수(매개변수 기본값) 2021.03.26 199
238 자주쓰는 것들 2021.03.26 203
237 split, join, replace, replace_all 2021.03.26 204
236 폼안에 태그명, 함수명 같을때 오류 2021.03.26 215
235 현재 날짜, 시간 ( Month + 1 에 대해서 ) 2021.03.25 218
234 Date 객체로 원하는 날짜, 시간 표현하기 2021.08.20 223
233 Javascript - 입력한 년, 월의 마지막 날짜 구하기 2021.03.09 224
232 3자리 마다 쉼표만 찍어주는 number_format 함수 2021.03.26 225
231 오브젝트 속성 2021.03.25 237
230 월의 마지막 날짜 계산하기 2021.08.20 242
229 대소문자 변경 (대문자를 소문자로, 소문자를 대문자로) 2021.08.20 261
228 Javascript - form태그 내부 ajax처리시 2번 전송되는 현상 2021.03.09 268
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved