undefined : 할당만 되고 값이 초기화되지 않은 상태 ( 의도적으로 넣을 수도 있고 )
null : 의도적으로 null을 넣어주어야 함.
null과 undefined 비교
// ==로 비교하면 둘은 같다.
console.log(null == undefined) // true
// == 로 비교해도 나머지 falsy 들과는 다르게 인지한다.
console.log(0 == undefined) // false
console.log('' == undefined) // false
console.log(false == undefined) // false
// ===로 비교하면 정확하게 동일한 것만 같다고 인지함.
console.log(null === undefined) // false
비교 팁
null 과 undefined를 구분해서 봐야하는 경우가 아니라면 === 대신 == 으로 한번에 비교하는 것을 추천한다.