JavaScript

12. [JavaScript] NULL 값 체크, 빈 값 체크

drizzle0925 2021. 8. 4. 14:08
728x90

보통 빈 값을 체크할 때는 아래와 같은 코드를 많이 사용합니다.

let value = "";
if(value === ""){
    console.log("빈 값입니다.");
}else{
    console.log("빈 값이 아닙니다.");
}

 

이렇게 하면 말 그대로 빈 값만 체크하고 null, undefined, NaN 등은 체크하지 않습니다.

그래서 빈값체크시에는 아래와 같이 적어주는 것이 좋습니다.

let value = "";
if(!value){
    console.log("빈 값입니다.");
}else{
    console.log("빈 값이 아닙니다.");
}

 

위와 같이 적어줌으로써, "", null, undefined, 0, NaN 등 false로 반환되는 것을 모두 걸러낼 수 있습니다.

 

하지만 0이 특정한 값으로 전달받을 수 있으나 false로 처리되거나 빈 배열, 빈 객체의 경우에는 true로 반환되는 경우가 발생합니다.

 

그래서 어떤 값이 자료형에 상관없이 빈 값인지 알고 싶을떄는 아래와 같이 함수로 만들어서 사용하면 편리합니다.

// 전달받은 값이 빈값인지 체크합니다. 
// [], {} 도 빈값으로 처리 
let isEmpty = function(value){ 
    if( value === "" || value === null || value === undefined || ( value !== null && typeof value === "object" && !Object.keys(value).length ) ){ 
        return true 
    }else{ 
        return false
    } 
};
728x90