[javascript] undefined와 null

공수정·2022년 1월 5일
2

javascript

목록 보기
1/4

undefined란?

var number;	//변수 선언

위에 코드문을 보면 number를 선언만하고 값을 초기화하지 않았다.
C언어라면 number라는 변수에는 쓰레기 값이 들어가 있을테지만, javascript에서는 엔진에 의해 쓰레기 값이 아닌 undefined라는 값이 암묵적으로 할당되어 초기화 된다.
이처럼 undefined란 값이 없음을 의미한다.

undefined와 null

공통점

빈 값, 없는 값을 의미

차이점

null

  • 값의 부재, 존재하지 않는 값, 의도적으로 값이 없다는 것을 의미
  • typeof로 자료형 확인시 object

undefined

  • 아무 값도 할당받지 않은 상태, 선언 이후 초기화되지 않은 변수를 의미
  • typeof로 자료형 확인시 undefined

정리

  • 의도적으로 값이 없다는 것을 명시하고 싶을 때에는 null
  • 변수를 선언하고 초기화 하지 않으면 undefined
  • 개발자가 undefined를 할당하는 것은 혼란을 야기하므로 지양
  • undefined는 자바스크립트 엔진이 할당하는 값
  • null을 할당하면 참조를 명시적으로 제거하는 것을 의미하고, 자바스크립트 엔진은 이러한 공간에 가비지 콜렌션을 수행함

출처
1. [JavaScript] undefined 타입 & null 타입 차이점
1. 변수

profile
계속해서 공부하는 개발자입니다 :)

0개의 댓글