아래 올라온것을 보고 좀 수정해봤습니다.
정규식으로 처리할수 있는 부분과 루프로 처리할수 있는 부분을 함축했더니 좀 짧아지네요
123-45-67890 스타일과 1234567890 스타일을 모두 처리합니다.
예제에 두가지 경우를 테스트하는것이 나와있으니 잘 쓰실수 있으리라 믿고...
조만간 제 validate 함수에 추가해서 올리도록 하겠습니다.
<script>
function is_binNo(num) {
var reg = /([0-9]{3})-?([0-9]{2})-?([0-9]{5})/;
if (!reg.test(num)) return false;
num = RegExp.$1 + RegExp.$2 + RegExp.$3;
var cVal = 0;
for (var i=0; i<8; i++) {
var cKeyNum = parseInt(((_tmp = i % 3) == 0) ? 1 : ( _tmp == 1 ) ? 3 : 7);
cVal += (parseFloat(num.substring(i,i+1)) * cKeyNum) % 10;
}
var li_temp = parseFloat(num.substring(i,i+1)) * 5 + '0';
cVal += parseFloat(li_temp.substring(0,1)) + parseFloat(li_temp.substring(1,2));
return (parseInt(num.substring(9,10)) == 10-(cVal % 10)%10);
}
alert(is_binNo('123-45-67891') ? "맞음" : "틀림");
alert(is_binNo('1234567891') ? "맞음" : "틀림");
</script>
즐프하세요 : )
정규식으로 처리할수 있는 부분과 루프로 처리할수 있는 부분을 함축했더니 좀 짧아지네요
123-45-67890 스타일과 1234567890 스타일을 모두 처리합니다.
예제에 두가지 경우를 테스트하는것이 나와있으니 잘 쓰실수 있으리라 믿고...
조만간 제 validate 함수에 추가해서 올리도록 하겠습니다.
<script>
function is_binNo(num) {
var reg = /([0-9]{3})-?([0-9]{2})-?([0-9]{5})/;
if (!reg.test(num)) return false;
num = RegExp.$1 + RegExp.$2 + RegExp.$3;
var cVal = 0;
for (var i=0; i<8; i++) {
var cKeyNum = parseInt(((_tmp = i % 3) == 0) ? 1 : ( _tmp == 1 ) ? 3 : 7);
cVal += (parseFloat(num.substring(i,i+1)) * cKeyNum) % 10;
}
var li_temp = parseFloat(num.substring(i,i+1)) * 5 + '0';
cVal += parseFloat(li_temp.substring(0,1)) + parseFloat(li_temp.substring(1,2));
return (parseInt(num.substring(9,10)) == 10-(cVal % 10)%10);
}
alert(is_binNo('123-45-67891') ? "맞음" : "틀림");
alert(is_binNo('1234567891') ? "맞음" : "틀림");
</script>
즐프하세요 : )
게시글 목록
| 번호 | 제목 |
|---|---|
| 17316 | |
| 17315 |
JavaScript
시계 스크립트 그런데 페이지 뜨는건 느린게 문제네...
|
| 17313 |
PHP
php 업로드 소스
4
|
| 17312 | |
| 17305 | |
| 17304 | |
| 17298 |
node.js
간단한 채팅
|
| 17294 | |
| 17291 | |
| 17285 | |
| 17284 |
JavaScript
두가지 형태의 페이지 로딩 [ 로딩중, 로딩 프로그레스바 ]
2
|
| 17279 | |
| 17272 | |
| 17271 |
JavaScript
관계에 따른 메뉴 구성방안
1
|
| 17270 | |
| 17262 | |
| 17255 | |
| 17248 |
JavaScript
엘레먼트 요소에서 data 를 이벤트 핸들러로 사용하기
4
|
| 17241 | |
| 17238 |
MySQL
interval에 쓸 수 있는 값
3
|
| 17236 |
PHP
탈퇴합니다.
6
|
| 17220 | |
| 17217 |
JavaScript
회원가입
2
|
| 17216 | |
| 17214 | |
| 17207 | |
| 17205 | |
| 17203 | |
| 17201 | |
| 17198 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기