null
- 의미
의도적으로 값이 없음을 나타내기 위해 사용된다
어떤 변수가 "아무것도 가리키지 않음"을 명시적으로 표현할 때 사용된다 - 타입 : object
이는 자바스크립트의 오래된 버그로, 실제로는 객체가 아닌 특별한 값 - 예시
let value = null; console.log(value); // null
undefined
- 의미 : 변수가 선언되었지만 아직 값이 할당되지 않은 상태
- 타입 : undefined
- 예시
let value; console.log(value); // undefined
var 변수가 호이스팅됐을 때도 undefined로 초기화된다
undeclared
- 의미 : 변수가 아예 선언되지 않은 상태
- 타입 : ReferenceError 에러 발생 해당 변수가 선언되지 않았기 때문
- 예시
console.log(nonExistentVar); // ReferenceError: nonExistentVar is not defined
let과 const가 TDZ에 있을 때도 ReferenceError가 뜨지만, 이는 undeclared와 다른 이유이다
NaN (Not-a-Number)
- 의미 : 숫자가 아닌 값이 숫자 연산에 사용될 때 반환되는 특수한 값
- 타입 : number
- 예시
let result = "hello" / 2; console.log(result); // NaN
'Javascript' 카테고리의 다른 글
| Arrow function를 사용하는 경우 (0) | 2024.11.01 |
|---|---|
| require과 import 차이점 (0) | 2024.10.31 |
| 실행 컨텍스트 (0) | 2024.10.29 |
| 이벤트 전파 (0) | 2024.10.27 |
| 마이크로태스크 큐(Microtask Queue)와 태스크 큐(Task Queue) (0) | 2024.10.26 |