* null과 undefined의 차이점

┌───────────┬───────────────────────────────────────────────┬───────────────────────────────────────────┐
│           │   null                                        │   undefined                               │
├───────────┼───────────────────────────────────────────────┼───────────────────────────────────────────┤
│변수선언   │   변수를 선언하고 값을 할당한 상태,           │   변수를 선언하고 값을 할당하지 않은 상태,│
│           │   null이라는 공백값(empty)을 할당한 상태      │   자료형이 결정되지 않은 상태             │
├───────────┼───────────────────────────────────────────────┼───────────────────────────────────────────┤
│값         │   어떠한 객체도 나타내지 않는 하나의          │   할당된 적이 없는 변수나 객체 프로퍼티에 │
│           │   고유한 값으로 취급됨                        │   접근할 경우 반환되는 리턴값이지만 값을  │
│           │                                               │   가지는 것은 아님                        │
├───────────┼───────────────────────────────────────────────┼───────────────────────────────────────────┤
│블리언 변환│   false                                       │   false                                   │
├───────────┼───────────────────────────────────────────────┼───────────────────────────────────────────┤
│숫자 변환  │   0                                           │   NaN                                     │
├───────────┼───────────────────────────────────────────────┼───────────────────────────────────────────┤
│문자 변환  │   null                                        │   undefined                               │
├───────────┼───────────────────────────────────────────────┼───────────────────────────────────────────┤
│결론       │   자료형이 결정되었지만 비어 있는 변수        │   자료형이 결정되지 않은 변수             │
└───────────┴───────────────────────────────────────────────┴───────────────────────────────────────────┘

ex)
-----------------------------------------------------------------
alert(null == undefined);   => true
alert(null === undefined);  => false