Javascript + Typescript/이론과 문법
null, NaN, undefined 차이
치춘
2022. 3. 25. 23:33
undefined
Boolean(undefined) //false
Number(undefined) //NaN
String(undefined) //"undefined"
선언은 되었지만 값이 할당되지 않은 상태 ⇒ 초기화하지 않은 변수
Boolean
문맥에선false
반환Number
문맥에선NaN
반환
null
Boolean(null) //false
Number(null) //0
String(null) //"Number"
아무런 값도 나타나지 않음
값 자체가 없다는 뜻 (undefined
) 이 아니라 값은 존재하지만 어떠한 유효한 값도 아니라는 뜻
Boolean
문맥에선false
반환Number
문맥에선0
반환
NaN
Boolean(NaN) //false
Number(NaN) //NaN
String(NaN) //NaN
(NaN === NaN) //false
isNaN(NaN) //true
‘숫자가 아니다' 를 의미 (Not a Number)
undefined
를Number
로 형변환 하면 값이 없으므로NaN
으로 변환됨null
을Number
로 형변환 하면 0으로 변환됨