[Javascript] null 과 undefined의 차이

SEOKWOO LEE·2022년 9월 7일
0

[Javascript & Node.js]

목록 보기
6/16

null과 undefined는 비슷해 보이지만 다르다.

null

null은 JavaScript의 원시 값 중 하나로, 어떤 값이 의도적으로 비어있음을 표현하며 불리언 연산에서는 거짓으로 취급합니다. -MDN

MDN의 추가적인 설명
"null은 리터럴로서 null이라 씁니다. null은 undefined과 같이 글로벌 객체의 속성에 대한 식별자가 아닙니다. 대신 null은 식별되지 않은 것을 표현합니다. 즉, 변수가 아무런 객체를 가리키지 않음을 표현합니다. API에서는 null을 종종 관련된 객체가 존재하지 않을 때 그 객체 대신 사용합니다."

쉽게 풀이하자면 null은 값은 할당되었으나 그 값이 비어있다 의미없는 값이다 라고 이해하면된다.

예시를 보자

let a = null
console.log(a)  // null

console.log(typeof a)  // 'object'

위의 코드와 같이 a의 타입이 객체로 나오는 것을 보면 알 수 있듯이 값이 할당되었다.

undefined

값을 할당하지 않은 변수는 undefined 자료형입니다. 또한 메서드와 선언도 평가할 변수가 값을 할당받지 않은 경우에 undefined를 반환합니다. 함수는 값을 명시적으로 반환하지 않으면 undefined를 반환합니다. -MDN

예시를 보면 설명이 쉽게 다가온다.

let a
console.log(a) // undefined

let b = 5
console.log(b) // 5

console.log(typeof a)  // undifined

위의 코드와 같이 변수 a가 선언되었으나 값이 할당되지 않으면 undefined를 반환한다.

profile
내가 보기위해 만든 나만의 공부 노트

0개의 댓글

관련 채용 정보