거위발바닥 2022. 9. 17. 16:36

자바스크립트는 

false

0

"" ( empty string )

null

undefined

NaN

위 6개를 제외한 나머지는 전부 Truthy 이며 

위 값들은 모두 Falsy이다. 

false와 falsy , ture와 truthy는 다르다

let userInput = prompt("enter");

if (userInput) {
    console.log("Truthy")
}
else {
    console.log("Falsy")
}

userInput에 뭐라도 치면 Falsy다. null이나 NaN을 입력해도 userInput string이 null, NaN인거지 위처럼 

type이 null이 아니므로 Truthy가 나옴

if (0) {
    console.log("Truthy")
}
else {
    console.log("Falsy")
}
 
위는 if값이 0이므로 Falsy가 나옴 ( 변수 지정 안함 )
null이나 NaN등을 if값에 넣어도 Falsy가 나옴