[JavaScript] undefined와 null 비교

김진영·2022년 7월 13일
0

JavaScript

목록 보기
1/8
post-thumbnail

📋 undefinednull의 비교

Javascript의 데이터 타입인 undefinednull,
null은 다른 언어에서도 사용되는 리터럴이지만 Javascript에서 undefined를 처음 마주한 사람은 당황하기 마련이다.

그럼 한번 undefinednull을 비교해보자.


📌 1. undefined

let msg; // msg 변수를 선언만 하고, 값을 할당(초기화)하지 않았다.
console.log(msg); // undefined
console.log(msg === undefined); //true
console.log(typeof msg) // undefined

undefined 데이터 타입은, 말 그대로 정의되지 않은 데이터이다.

let, const 키워드를 사용해서 변수, 상수를 정의할 때 초기화 하지 않았다면, 즉 변수를 선언만 하고 값을 할당하지 않았다면 변수의 값에는 undefined 가 할당된다.


📌 2.null

let msg = null;
console.log(msg === undefined); // false
console.log(msg == undefined); // true
console.log(typeof msg); // object

null 타입은 데이터 타입 중 하나다. 말 그대로 값이 아예 없는 데이터다.

하지만 콘솔에 typeof null 로 확인해보면 object 라고 나온다. null 은 말그대로 아무것도 아닌 빈 객체를 가리키고 있어 object 라고 나온다


📌 3. 비교하기

공통점

  • 둘다 각각의 타입(undefined, null)의 값이 유일하다.
  • undefined 타입의 값은 undefined가 유일하다.
  • null 타입의 값은 null이 유일하다.

차이점

  • undefined는 '정의하지 않음'인 반면에, null은 값이 '없음'이다.
  • undefined의 typeof는 undefined 인 반면, null의 typeof는
    object이다.

3개의 댓글

comment-user-thumbnail
2022년 7월 13일

👍

1개의 답글