본문 바로가기
IT/web

[javascript] javascript IP 주소, 포트 유효성 검사 예제

by 어느해겨울 2022. 1. 5.

 

javascript IP 주소, 포트 유효성 검사 예제

- ip address, port, check, validation

javascript 에서 자주 사용되는 기능인 IP주소와 포트 검사 함수 코드를 공유한다.

정규식과 .test() 를 이용하여 IP주소 패턴을 검증하고, isInteger()를 이용하여 포트 값을 검증한다.

함수의 범위 검증은 소스코드에서 확인하자.

 

 

소스 코드

<script>
    function is_valid_ip_addr(_target) {
        if( /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(_target) ) {
            return true;
        }

        return false;
    }

    function is_valid_port(_target) {
        if( Number.isInteger(_target) && _target >= 1 && _target <= 65535 ) {
            return true;
        }

        return false;
    }

    // function : is_valid_ip_addr()
    console.log(is_valid_ip_addr("192.168.1.99"));      // true,    정상 주소
    console.log(is_valid_ip_addr("192.168.256.255"));   // false,   잘못된 주소 범위
    console.log(is_valid_ip_addr("192.168.1"));         // false,   잘못된 주소 표기
    console.log(is_valid_ip_addr("abcd"));              // false,   문자열

    // function : is_valid_port()
    console.log(is_valid_port(8888));                   // true,    정상 범위 포트
    console.log(is_valid_port(123546));                 // false,   잘못된 범위
    console.log(is_valid_port(-1));                     // false,   잘못된 범위
    console.log(is_valid_port("test"));                 // false,   문자열
</script>

 

 

결과

- 크롬 브라우저에서 F12 개발 도구 > 콘솔 보기를 통해 console.log() 로 찍은 결과를 확인한다.

위 소스 코드의 주석 결과와 같이 출력되는 것을 확인할 수 있다.

 

 

jquery의 $.isNumeric 과 동일한 기능을 수행하는 Number.isInteger() 의 자세한 설명은 아래의 사이트를 참고하자.

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Number/isInteger

 

Number.isInteger() - JavaScript | MDN

Number.isInteger() 메서드는 주어진 값이 정수인지 판별합니다.

developer.mozilla.org

 

끝.

 

 

댓글