[Javascript] Truthy Falsy 는 무엇인가?

proman·2022년 2월 6일
0

Javascript

목록 보기
1/2

❗ 왜 알아야되는가?

주위 개발자분들중 이러한것이 가능하다는점은 인지하고있지만 개념에 대해 제대로 이해하고있는편이 아니며, 타입캐스팅형태로 진행된다고 알고계신분들이 있어 올바른지식에 대해 알아야된다고 생각하고있습니다.

🟡 Truthy

참 같은 값이며, 불리언을 기대하는 문맥에서 true로 평가되는 값입니다.
falsy값들을 알고 나머지는 truthy라고 생각하며되는데, 값이 있다는걸 표현하고있는것들이 truthy로 되어있는걸 볼수 있습니다.

   if (true)
    if ({})
    if ([])
    if (42)
    if ("0")
    if ("false")
    if (new Date())
    if (-42)
    if (12n)
    if (3.14)
    if (-3.14)
    if (Infinity)
    if (-Infinity)

🟠 Falsy

거짓 같은 값이며, 불리언을 기대하는 문맥에서 false로 평가되는 값입니다.
boolean, string, array, number 등 초기값 및 값이 없다는걸 나타내는것이 falsy로 취급되는걸 알수있습니다.

if (false)
if (null)
if (undefined)
if (0)
if (-0)
if (0n)
if (NaN)
if ("")

📝 활용법

  1. truthy, falsy 유효성 체크
    간혹 isEmpty()등 자바처럼 해당값을 일일이 체크하는 함수를 만들어놓는경우가 있는데,
    기본문법으로도 확인이 가능하다는점 알고계시면 좋다고 생각합니다.
if("") {
	console.log("찍힙니당");
}
// 찍힙니당
  1. truthy, falsy -> boolean 형변환하기
    논리 Not연산자인 !를 이용하여 형변환을 할수있는데,
    일부 라이브러리에서 == 아닌 ===을 사용하여 boolean 타입체크까지 진행을 하는경우가 있기때문에 알아두면 좋다고 생각합니다.
console.log(0); -> // 0
console.log(!0); -> // false
console.log(!!0); -> // true

🖨 참고자료

0개의 댓글