JS 자주 사용하는 함수 모음


실무 JavaScript 개발 시 자주 쓰이는 유용한 커스텀 메서드 및 유틸리티 함수(문자열 포맷팅, 만 나이 계산, 이메일 정규식 검결, 특수문자 제거 등) 모음입니다.

1. 문자열 포맷팅 및 태그 치환

// note: 문자열 타입에서 쓸 수 있도록 format() 함수 확장
String.prototype.format = function(){
    var num = parseFloat(this);
    if( isNaN(num) ) return "0";
 
    return num.format();
};

// note: html 태그 열고 닫기 replace
function tag_replace(str, br, tag){
    if (str){
        var a = str.split(br),
            etag = tag.replace('<', '</');
        return a[0] + '  ' + tag + a[1] + etag;
    }
    return;
}

2. 만 나이 계산 및 이메일 형식 체크

// note: 만 나이 계산
function get_age(date){
    var d = date.split("-");
    const today = new Date();
    const birthDate = new Date(d[0], d[1] - 1, d[2]);
    var age = today.getFullYear()
          - birthDate.getFullYear()
          + 1;

    return parseInt(age);	
}

// note: 이메일 형식 체크
function verify_email(email) {
    var format = /([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/; 
    return (email.search(format) != -1) ? true : false; // 올바른 포맷 형식
}

3. 공백 및 특수문자 정제 (정규식)

// note: 정규식 공백 제거
function remove_blank(str) {
    return str.replace(/(\s*)/g, "");
}

// note: 정규식 한글+숫자,영문 남기고 모든 특수문자 제거
function replace_trim(str) {
    return str.replace(/[^(가-힣ㄱ-ㅎㅏ-ㅣa-zA-Z0-9)]/gi, "");
}

// note: 공백 제거 + 특수문자 제거 종합 처리
function replace_init(str) {
    return replace_trim(remove_blank(str));
}