6장 데이터 타입

Boseong Choi·2023년 6월 17일
0

데이터 타입 (= 타입) 은 값의 종류를 말한다. ES6는 7개의 데이터 타입을 제공하고, 원시 타입과 객체 타입으로 분류할 수 있다.

원시타입 : 숫자, 문자열, 불리언, undefined, null, 심벌
객체타입 : 객체, 함수, 배열 등

6.1 숫자 타입

모든 수를 실수로 처리한다. intlong같이 정수만을 표현하기 위한 타입이 없다. 정수로 표시된다고 하더라도 사실은 실수다. 또한, 정수로 표시되는 수끼리 나누더라도 실수가 나올 수 있고 부동소수점 형식을 따르기 때문에 10진법 소수를 표현할 때 오차가 생길 수 있다.

6.2 문자열 타입

텍스트 데이터를 나타내는데 사용. 작은따옴표, 큰따옴표, 백틱으로 텍스트를 감싼다. 감싸는 이유는 키워드나 식별자같은 토큰이랑 구분하기 위해.

6.3 템플릿 리터럴

ES6부터 새로 추가된 문자열 표기법. 숨쉬듯 쓰고있기 때문에 자세한 설명 생략.

6.4 불리언 타입

논리적 참, 거짓을 나타내는 truefalse 뿐이다. 조건문에서 자주 사용됨.

6.5 undefined 타입

var 키워드로 선언한 변수는 이후 값을 할당 안하면 암묵적으로 undefined로 초기화된다.
개발자가 의도적으로 var a = undefined 와 같이 할당한다면 혼란스럽기 때문에 값이 없다는 것을 명시할거면 var a = null 와 같이 null 값을 할당하도록 하자.

6.6 null 타입

의도적으로 변수에 값이 없다는 것을 명시해준다. 함수가 유효한 값을 뱉어낼 수 없는경우 명시적으로 null을 뱉기도 한다.

6.7 심벌 타입

ES6에서 추가된 문법. 변경 불가능한 원시타입이며 다른 값과 중복되지 않는 유일무이한 값이다. 주로 이름이 충돌할 위험이 없는 객체의 유일한 프로퍼티 키를 만들기 위해 사용.

6.8 객체 타입

다음에 알아보자.

6.9 데이터 타입의 필요성

그래서 타입이 왜 필요할까?

(1) 타입에 의한 메모리 공간의 확보와 참조
값은 메모리에 저장하고 참조할 수 있어야 한다. 저장하려면 메모리 공간의 크기를 결정해야한다.
일반적으로 숫자 타입은 8바이트, 문자 타입은 2바이트, 불리언 타입은 1바이트 등, 타입에 따라 확보해야 할 공간이 다르다.

따라서 타입을 지정해주면 메모리 공간의 낭비와 손실 없이 저장할 수 있기 때문에 데이터 타입이 필요하다.

(2) 타입에 의한 값의 해석
만약 타입을 지정안하고 65라는 값을 메모리에 2진수로 저장했다면, 이를 해석할 때 숫자타입(65)인지, 문자열 타입(A) 인지 구분이 불가능하기 때문에 다르게 해석될 수 있다.

profile
Frontend Developer

0개의 댓글