데이터 타입(Data Type)
원시 데이터 타입(primitive type)과 객체
데이터 타입은 객체와 객체가 아닌 것 두가지로 구분할 수 있다.
또는 원시 데이터 타입(기본) vs 객체 데이터 타입(참조)
원시 데이터 타입 : 숫자, 문자열, boolean(true/false), null, undefined
이 외의 모든 데이터 타입들은 객체다.
레퍼 객체(wrapper object)
원시 데이터를 객체처럼 사용하려고 할 때 자동으로 만들어지는 객체를 말한다. string이라는 객체가 문자열 원시데이터를 감싼다.
숫자 : Number, 문자열 : String, Boolean:Boolean
문자열은 분명히 property(속성)과 메소드가 있다. 그렇다면 객체인데, 왜 문자열은 객체가 아니라고 하는 걸까? 그것은 내부적으로 문자열이 원시 데이터 타입이고, 문자열과 관련된 어떤 작업을 하려고 할 때 자바스크립트는 입시로 문자열 객체를 만들고 사용이 끝나면 제거하기 때문이다. 이러한 처리는 내부적으로 일어나기 때문에 몰라도 무관하지만, 원시 데이터 타입과 객체는 좀 다른 동작 방법을 가지고 있기 때문에 이들을 분별하는 것이 필요하다.
Last updated