길/Javascript 기본

왜 typeof null은 object일까.

7he8oy 2021. 1. 26. 13:32

Null은 object 값이 '의도적으로' 없는 것을 의미한다.

primitive value 중의 하나지만 

typeof null //object

typeof 함수에서 object를 리턴한다.

이는 

stackoverflow.com/questions/20480729/why-does-typeofnull-return-object-but-you-cant-assign-properties-to-it/20480863#20480863 

 

여기서 그 이유를 알 수 있다.

 

이와 비슷한 경우로 NaN이 있는데, NaN은 not a number의 줄임말임에도 불구하고 typeof NaN은 number를 리턴한다.

그 이유는 NaN이 Number를 다룰 때 사용되기 때문이다.

따라서 이에 연정선에서,

null은 object가 '의도적'으로 비어 있는 것이므로 object를 리턴하는 것이다.

' > Javascript 기본' 카테고리의 다른 글

three dots (...)  (0) 2021.01.26
scope & closer  (0) 2021.01.26
mutator method인지 참고하는 사이트  (0) 2021.01.25
primitive type vs. reference type  (0) 2021.01.25
Array.isArray('object')  (0) 2021.01.25