반응형
[JS] null과 undefined 차이
소개
JavaScript에서 null과 undefined는 매우 흔한 용어입니다.
이 둘은 모두 "값이 없음"을 나타내지만, 그 차이점은 무엇일까요?
null
null은 원시 데이터 유형으로, 값이 없음을 나타내는 데 사용됩니다.
변수를 선언하고 값을 할당하지 않았거나, 변수에 null을 할당하여 값이 없음을 나타낼 수 있습니다.
예를 들어:
let foo = null;
console.log(foo); // null
undefined
undefined는 변수가 선언되었지만, 값을 할당하지 않은 경우에 발생합니다.
함수에 매개변수를 전달하지 않은 경우나, 객체의 속성에 값이 없는 경우도 undefined가 반환됩니다.
예를 들어:
let bar;
console.log(bar); // undefined
function baz(a) {
console.log(a);
}
baz(); // undefined
결론
반응형
null과 undefined는 모두 "값이 없음"을 의미하지만, 사용되는 상황이 다릅니다. null은 개발자가 직접 값이 없음을 할당하는 데 사용되고, undefined는 변수가 선언되었지만 값을 할당하지 않은 경우에 자동으로 할당됩니다. 또한, JavaScript에서는 null이 객체 유형이지만 undefined는 원시 데이터 유형입니다. 그래서 typeof 연산자로 확인할 때 결과 값도 다릅니다.
console.log(typeof null); // "object"
console.log(typeof undefined); // "undefined"
따라서, 변수를 선언할 때 값이 없는 상황이라면 undefined를 사용하고,
개발자가 직접 값이 없음을 할당해야 하는 상황이라면 null을 사용하는 것이 좋습니다.
반응형
'Javascript' 카테고리의 다른 글
[TS] Generics, Any 차이 (0) | 2023.03.09 |
---|---|
[TS] TypeScript를 사용하는 이유 (2) | 2023.03.04 |
[JS] 정규표현식 간단한 정리 (0) | 2023.03.03 |
자바스크립트로 드래그 방지 (0) | 2023.02.21 |
[Javascript] 요소의 절대 좌표 함수 (0) | 2023.01.13 |