타입도 undefined로 유일하다.
var 키워드로 선언한 변수는 암묵적으로 undefined로 초기화된다.
초기화를 시켜줘도 undefined는 할당된다.
이는 나중에 다룰 호이스팅과도 연관이 있다.
만약에 개발자가 의도적으로 변수에 할당할 값은 아니다.
console.log(score); // undefined
// 변수 선언
var score;
이것도 타입이 Null로 유일하다.
이 값은 개발자가 의도적으로 변수에 값이 없다는 걸 표현하기 위해 선언할 수 있는 값이다.
이것이 Undefined와 가장 큰 차이다.
let score = null; // 직접 초기화를 시키거나, 대입해줘야 함
console.log(score); // null
let HTMLelement = document.querySelecor('.class');
// HTML 문서에 할당값이 없을 경우, undefined가 아님
console.log(HTMLelement); // Null
의도적으로 값이 없다는 것을 명시하려면 null을 사용해야겠군요! 사용자가 직접 지정하지 않아도 null이 나오는 예외 사항도 잘 체크해둬야겠습니다 ㅎㅎ
다른 언어에서는 null이 undefined처럼 쓰이는데 이런 점은 개념이 헷갈리는 것 같습니다..😢 오늘 하루도 수고하셨습니다!!