Javascript Deep Dive/데이터 타입

undefined 타입, null 타입, 심벌 타입, 객체 타입

FE묭묭 2022. 9. 7.

undefined 

  • undefined 값은 undefined 가 유일하다.
  • var 키워드로 선언한 변수는 암묵적으로 undefined 로 초기화 된다.

null

  • null 의 값은 null 이 유일하다.
  • 대소문자를 구분하므로 주의한다.
  • 값이 없다는 것을 의도적으로 명시할 때 사용한다.
  • 이전에 할당되어 있던 값에 대한 참조를 명시적으로 제거하는 것도 의미한다.

심벌 타입

  • ES6에서 추가된 7번째 타입, 변경 불가능한 원시 타입의 값이다.
  • 다른 값과 중복 되지 않는 유일무이한 값이다.
  • 객체의 유일한 프로퍼티 키를 만들기 위해 사용한다.
  • 심벌 이외의 원시 값은 리터럴을 통해 생성하지만 심벌은 Symbol 함수를 호출해 생성한다. 
  • 이 때 생성된 심벌값은 외부에 노출되지 않으며 다른값과 절대 중복되지 않는 유일무이한 값이다.

객체 타입

  • 원시타입과 객체타입은 근본적으로 다르다.
  • 자바스크립트는 객체 기반의 언어이며, 자바스크립트를 이루고 있는 거의 모든 것이 객채 이다.
  • 지금까지 살펴본 숫자, 문자열, 불리언, undefined, null, 심벌 타입 이외의 값은 모두 객체 타입이다.

댓글