null과 undefined의 차이점

yj j·2023년 12월 1일

자바스크립트에서 nullundefined는 둘 다 없음을 의미하는 값이지만, 엄연히 의미가 다릅니다.

null은 빈 값을 할당했다는 것을 명시적으로 표현한 객체입니다.
undefined는 변수를 선언한 뒤에 값이 입력되지 않았다는 것을 암시적으로 표현한 값입니다.

console.log(typeof null);        //object 
console.log(typeof undefined);   //undefined

그렇지만 null을 명시적으로 작성하기보다는 속성 자체를 정의하지 않는 것이 일반적입니다.

const user = {
  name:'Sera',
  age:null     //이렇게 쓰진 않습니다
}

const user = {
  name:'Sera'  //아예 age 속성을 작성하지 않습니다
}

undefined도 직접적으로 작성하지 않습니다. 값이 정의되지 않은 변수에게 자동으로 부여되는 것이므로 undefined가 반환되는 경우를 명확히 알아야 합니다.

  1. 변수가 값을 할당받지 못했을 때
  2. 함수가 값을 return하지 않았을 때
profile
꿈꾸는 사람

0개의 댓글