Web Programming
[JavaScript] Truthy vs Falsy
효딩
2024. 3. 3. 20:37
Truthy
자바스크립트에서 truthy인 값은 Boolean 문맥에서 true로 평가되는 값이다. (너무 당연한 얘기)
falsy값으로 정의된 값이 아니면 모두 truthy값으로 평가된다.
Falsy
Boolean 문맥에서 false로 평가되는 값이다.
Falsy 값:
- false: 직접적으로 false 값을 가지는 경우
- 0: 숫자 0
- -0: 음의 숫자 0
- NaN: 숫자가 아님(Not-a-Number)
- null: 값이 없음을 나타내는 값
- undefined: 정의되지 않은 값
- '' 또는 "": 빈 문자열 등
주의!
빈 배열 []나 객체 {}는 truthy한 값이다.
falsy한 값 앞에 !를 붙여주면 truthy로 전환된다. (반대도 마찬가지)
아래 코드는 지피티가 짜준 예시
let value = ''; // falsy value
if (value) {
console.log("This block won't execute because the value is falsy.");
} else {
console.log("This block will execute because the value is falsy.");
}