개발/자바스크립트

null undefined의 차이

대왕판다 2022. 5. 16. 17:20

Null 과 Undefined 차이

 

// 정의되지 않고 초기화된 적도 없는 foo
foo; //ReferenceError: foo is not defined

// 존재하지만 값이나 자료형이 존재하지 않는 foo
var foo = null;
foo; //null

// null은 어떤 값이 의도적으로 비어있음을 표현
typeof null === 'object' // true

var x; // 값을 할당하지 않고 변수 선언
console.log("x's value is", x) // "x's value is undefined" 출력

// undefined는 선언한 후 값을 할당하지 않은 변수 혹은 주어지지 않은 인수에 자동 할당.

null, undefined 모두 원시값에 해당한다.

  • 원시값이란 객체가 아니면서 메서드도 가지지 않는 데이터이다.
  • 원시 값은 변형할 수 없다. (원시 값에 새로운 값을 부여-할당-할 수는 있다.)