JavaScript의 if문에서 false로 판정하는 값들

#스터디 #VanillaJS

모르는 내용은 아니지만, 매번 코드를 작성할 때 잊게 되는 것 같아 정리 겸 확실히 하기 위해 적습니다.

  1. false: Boolean
  2. 0: 정수 0
  3. -0: 정수 -0
  4. 0n: BigInt
  5. "": 빈 문자열
  6. null
  7. undefined
  8. NaN

0n: BigInt

정수 리터럴의 뒤에 n을 붙이거나(10n) 함수 BigInt()를 호출해 BigInt를 생성할 수 있습니다. 일반적으로 Int 에서 가장 큰 정수는 9007199254740991 이지만, 그 뒤에 n을 붙이거나 BigInt() 로 감싸면 그 이상의 숫자 9007199254740992n 도 담을 수 있습니다.

undefined에 대한 판정

예를 들어, 어떤 변수에 값이 정의되어 있는지 아닌지에 따라 if 문을 써야 한다면, 절대로

if ( 변수이름 ) {
} else {
}

이렇게 판정하면 안 되고, === 라든가 !== 라든가 typeof 같은 걸 사용하는 것이 맞습니다.