본문 바로가기

Javascript/Javascript

[Javascript]에서의 Truthy and Falsy

728x90
반응형

 

일반적인 Javscript에서 null 체크 코드는 아래와 같다.

function print(person) {
  if (person === undefined || person === null) {
    console.log('person is null');
    return;
  }
  console.log(person.name);
}

const person = null;
print(person);

결과

위의 코드는 아래와 같이 축약하여 사용이 가능하다.

function print(person) {
  if (!person) {
    console.log('person is null');
    return;
  }
  console.log(person.name);
}

const person = null;
print(person);

결과

위와 같은 방식이 작동하는 이유는 undefined 와 null 이 Falsy 한 값이고

Falsy 한 값 앞에 느낌표를 붙여주면 true 로 전환되기 때문이다.

 

Javascript에서 Falsy한 값들의 종류는 아래와 같다.

console.log(!undefined);
console.log(!null);
console.log(!0);
console.log(!'');
console.log(!NaN);

결과

이외의 값은 모두 Truthy한 값이다.

console.log(!3);
console.log(!'hello');
console.log(!['array?']);
console.log(![]);
console.log(!{ value: 1 });

결과

이어서 다음 글에서는 Truthy and Falsy를 활용한 단축 평가 논리 계산법에 대해서 정리할 예정이다.

 

참조 : https://learnjs.vlpt.us/basics/06-object.html

728x90
반응형