undefined
undefined
는 선언되었으나 아무런 값도 할당되지 않은 변수의 값을 나타낸다. 변수를 선언하면 초깃값으로 undefined
를 갖게 되는 것이다.
null
null
은 변수에 별도로 할당해주는 값이며, 아무런 값도 참조하지 않음을 의미한다.
null
과 undefined
모두 '값이 없음'을 나타내는 데이터 타입이자 값이지만, typeof
연산자를 사용하면 다른 결과를 보인다.
typeof undefined // undefined
typeof null // object
따라서 두 값을 비교해야할 경우에는 엄격한 비교를 해야 한다.
undefined == null // true
undefined === null // false
참고한 글
What is the difference between null and undefined in JavaScript?
Web Club :: undefined와 null의 차이점