JavaScript의 if문에서 false로 판정하는 값들
모르는 내용은 아니지만, 매번 코드를 작성할 때 잊게 되는 것 같아 정리 겸 확실히 하기 위해 적습니다.
false
: Boolean0
: 정수 0-0
: 정수 -00n
: BigInt""
: 빈 문자열null
undefined
NaN
0n: BigInt
정수 리터럴의 뒤에 n
을 붙이거나(10n
) 함수 BigInt()
를 호출해 BigInt를 생성할 수 있습니다. 일반적으로 Int 에서 가장 큰 정수는 9007199254740991
이지만, 그 뒤에 n
을 붙이거나 BigInt()
로 감싸면 그 이상의 숫자 9007199254740992n
도 담을 수 있습니다.
undefined에 대한 판정
예를 들어, 어떤 변수에 값이 정의되어 있는지 아닌지에 따라 if
문을 써야 한다면, 절대로
if ( 변수이름 ) {
} else {
}
이렇게 판정하면 안 되고, ===
라든가 !==
라든가 typeof
같은 걸 사용하는 것이 맞습니다.