자바스크립트에는 특수한 값인 Null, undefined, NaN이 있으며, 각각의 의미와 용도가 다른다.
let x;
console.log(x); // 출력: undefined
변수를 선언만 하고 값을 할당하지 않으면 그 변수의 값은 undefined이다.
❗undefined 직접 할당
undefined는 시스템에서 초기화되지 않은 상태를 나타내기 위해 사용되므로, 이를 명시적으로 할당하는 것은 혼란을 줄 수 있다.let y = undefined; // 가능하지만 권장되지 않음
let z = null;
console.log(z); // 출력: null
null은 명시적으로 "비어있음"을 나타내기 위해 사용된다.
변수를 null로 설정하려면 명시적으로 할당해야 한다.
NaN은 자바스크립트에서 숫자형 데이터 타입에 속한다.let result = 0 / 0;
console.log(result); // 출력: NaN
수학적 연산의 결과가 숫자가 아닌 경우 NaN이 반환된다.
NaN을 포함하는 연산 결과는 항상 NaN이다.let sum = NaN + 5;
console.log(sum); // 출력: NaN
💡 요약
- undefined
초기화되지 않은 변수의 기본값. 시스템에서 자동으로 설정. 직접 할당은 권장되지 않음.
- Null
기본값이 아니며, 변수 초기화나 리셋, 클리어를 위해 명시적으로 사용.
- NaN
숫자형 데이터 타입이며, 숫자가 아닌 결과를 나타냄. NaN을 포함한 연산 결과는 항상 NaN.