JavaScript 빈 값, undefined, Null 체크 공통함수

JavaScript 코딩을 하다 보면 데이터의 유효성 체크를 해줘야 할 때가 많이 있습니다.

특히 null 이나 undefined 값에 기본 함수를 사용할 시 에러가 발생할 때가 많이 있습니다.

 

데이터의 유효성 체크해야하는 경우

// 문자열의 길이를 리턴하는 함수
function getLength(str) {
	return str.length
}

getLength("hello")   // 5
getLength(null)      // error 발생

문자열이나 배열의 길이를 리턴하는 기본 속성 length는

null이나 undefined에 사용할 경우 에러가 발생합니다.

 

아주 간단한예를 들었습니다만,

직접 프로그램을 짜다 보시면 위처럼 데이터가 유효한 값인지, 빈 값은 아닌지

체크해야 하는 경우를 많이 느끼실 수 있을 겁니다.

그런 경우를 위해 공통적으로 데이터를 체크하는 함수를 만들어 보겠습니다.

JavaScript 빈 값 체크 함수

// "", null, undefined, 이상한 숫자, 빈 Object, 빈 Array도 검사
function isEmpty(data) {
    if(typeof(data) === 'object') {
        if(!data) {
            return true;
        }
        else if(JSON.stringify(data) === '{}' || JSON.stringify(data) === '[]') {
            return true;
        }
        return false;
    }
    else if(typeof(data) === 'string') {
        if(!data.trim()) {
            return true;
        }
        return false;
    }
    else if(typeof(data) === 'undefined') {
        return true;
    }
    else if(isNaN(data) === true) {
        return true;
    }
    else {
        return false;
    }
}

위 함수는 빈 문자열, 또는 빈 Obejct, Array 또는 숫자에 관한 유효성을 검사하는 함수입니다.

사용 환경에 따라 조금씩 수정해서 사용하셔도 좋겠습니다.

이런 식으로 공통 함수를 만들어 데이터의 유효성을 체크할 때 사용하면 굉장히 유용할 것입니다.