← Back to NOTES 🌰
← Effective JavaScript 🤿
← 아이템 53 - 일관된 컨벤션을 유지하라
핵심 요약
- undefined는 어떠한 값으로도 할당되지 않아 자료형이 정해지지 않은 상태
- null과 undefined는 명확히 다름 (null은 의도적인 값 없음)
- undefined는 주로 디폴트 값을 사용할 때 활용
- falsy 값과 undefined를 구분하여 처리해야 의도대로 동작
자세한 내용
Undefined란?
어떠한 값으로도 할당되지 않아 자료형이 정해지지(undefined) 않은 상태를 의미한다.
다음과 같은 경우에 undefined가 발생한다:
- 할당되지 않은 변수
- 객체에 존재하지 않는 프로퍼티
- return 값이 없거나 생략된 함수
- 인자를 전달받지 않은 함수 파라미터
Null과의 비교
- Null: 개발자가 의도적으로 값이 없음을 할당한 상태. 즉 null은 자료형이 정해진 상태
- 타입 차이: Null의 타입은 object이지만, Undefined의 타입은 undefined로 서로 다름
- 비교 시 주의: undefined와 비교 시 강제 형변환으로 인해 의도치 못한 실수를 유의해야 함