개발/javascript

javascript 빈 값 체크~ NOT(!) 사용으로 끝내기

희운1205 2022. 12. 7. 11:56
반응형

javascript 빈값 체크

javascript 빈값을 체크할때는 일반적으로는 null, undefined, 0, 공백문자를 직접 넣어 체크하는 방법을 사용합니다
체크하는 값의 타입형(typescript) 이 정해져 있는 경우에는 각각의 특성에 맞게 처리하는게 
올바른 방법(?)이긴 하지만 체크하는 값의 유형이 any(아무거나?) 이거나 
단순히 값이 있는지 없는지(0,null,undefined,공백문자) 체크하고자 한다면 하나의 기호로 처리 가능합니다.

우선 빈값을 체크하기전에  null, undefined의 특징을 먼저 알아보자면 
null 은 변수가 선언되어 있지만 빈값을 할당한 상태이고, undefined는 변수가 선언되어 있지만
아무런 값이 할당이 안되어 있는 상태입니다.

일반적인 빈값 체크 예시

function emptyData(str) {
  if(str === undefined || str === null || str === 0 || str === '') {
    return true;
  } else {
    return false;
   }  
}

emptyData('');
=> true
emptyData(null);
=> true
emptyData(0);
=> true
emptyData();
=> true
emptyData(134);
=> false

논리 연산자 NOT(!) 사용

function emptyData(str) {
  if(!str) {
    return true;  
  } else {
    return false;
  }  
}

emptyData('');
=> true
emptyData(null);
=> true
emptyData(0);
=> true
emptyData();
=> true
emptyData(134);
=> false

* 논리연산자 NOT(!) 연산자를 두개(!!)로 사용하면 반대의 경우도 가능
var str = 'hello';

!!str;
=> true // 유효한 값이 있는 경우

var str = '';

!!str
=> false // 유효한 값이 없는 경우 (str과 같음)

 

반응형