undefined, null, undeclared 비교
undefined
- undefined는 JavaScript에서 원시 데이터 타입 중 하나
- 변수를 선언하고 값을 할당하지 않은 경우, 해당 변수는 자동으로 undefined 값을 갖게 됨
- 함수에서 반환 값이 명시적으로 지정되지 않은 경우 기본적으로 undefined를 반환
null
- null은 또 다른 원시 데이터 타입 중 하나이며, 변수에 명시적으로 할당
- 일반적으로 변수에 아무 값도 없음을 나타내기 위해 사용
- 객체를 가리키는 변수에 null을 할당하여 객체 참조를 해제하는 데에도 사용
undeclared
- undeclared 변수는 선언되지 않은 변수를 가리킴
- 즉, 해당 변수에 대해 어떠한 선언도 존재하지 않음
- undeclared 변수를 사용하려고 하면 ReferenceError가 발생
예시
let variable1;
console.log(variable1);
function returnUndefined() {
}
console.log(returnUndefined());
let variable2 = null;
console.log(variable2);
console.log(undeclaredVariable);
정리
- undefined는 JavaScript에서 자동으로 할당되는 값이며, 변수를 선언하고 값을 할당하지 않았을 때 발생
- null은 변수에 명시적으로 할당되며, 주로 변수를 초기화하거나 객체 참조를 해제하는 데 사용
- undeclared 변수는 선언되지 않은 변수를 가리키며, 사용하려고 하면 ReferenceError가 발생