FE/JavaScript

📖 [JS] 자바스크립트에서 "truthy"와 "falsy"

serin99 2024. 7. 19. 17:04
728x90

 

 

 

자바스크립트에서 "truthy"와 "falsy"는 조건문에서 true 또는 false로 평가되는 값을 설명하는 용어입니다.

자바스크립트는 엄격한 불리언 값(true, false)뿐만 아니라 다양한 값들도 불리언 문맥에서 평가할 수 있습니다.

 

 

 


 

 

Truthy

 

 

"Truthy" 값은 조건문에서 true로 평가되는 모든 값입니다. 자바스크립트에서 truthy로 평가되는 값은 다음과 같습니다.

 

 

  1. true: 불리언 true 값.
  2. 숫자: 0이 아닌 모든 숫자(양수 및 음수). 예를 들어, 1, -1, 3.14 등.
  3. 문자열: 빈 문자열이 아닌 모든 문자열. 예를 들어, "hello", "false", "0" 등.
  4. 객체: 빈 객체 포함 모든 객체. 예를 들어, {}, [], function() {} 등.
  5. Symbol: 모든 심볼 값.
  6. 새로 생성된 Date 객체: 예를 들어, new Date().
if (1) {
  console.log("This is truthy"); // 출력됨
}

if ("hello") {
  console.log("This is also truthy"); // 출력됨
}

 

 

Falsy

 

 

"Falsy" 값은 조건문에서 false로 평가되는 모든 값입니다. 자바스크립트에서 falsy로 평가되는 값은 다음과 같습니다.

 

 

  1. false: 불리언 false 값.
  2. 0: 숫자 0.
  3. -0: 숫자 -0.
  4. NaN: "Not-a-Number".
  5. "": 빈 문자열.
  6. null: null 값.
  7. undefined: undefined 값.
if (0) {
  console.log("This will not be logged"); // 출력되지 않음
}

if ("") {
  console.log("This will also not be logged"); // 출력되지 않음
}

 


 

Truthy와 Falsy의 사용 예

 

자바스크립트에서 truthy와 falsy 값을 사용하는 가장 일반적인 예는 조건문입니다.

let value = "hello";

if (value) {
  console.log("Value is truthy"); // 출력됨
} else {
  console.log("Value is falsy");
}

value = 0;

if (value) {
  console.log("Value is truthy");
} else {
  console.log("Value is falsy"); // 출력됨
}

 

이를 이용하면 조건문을 간결하게 만들 수 있다는 장점이 있다.

 

728x90