타입스크립트 D-5

nearworld·2022년 7월 13일
0

typescript

목록 보기
5/28

본 게시글은 정확한 정보를 담고있지 않을 수 있으므로 다른 자료도 참고하시길 바랍니다.
만약, 본 게시글이 잘못된 정보를 가지고 있다면 피드백 부탁드립니다. 감사합니다.

튜플

타입스크립트에서는 새로운 데이터 타입을 지원한다. 튜플은 정해진 길이의 배열과 그 배열의 각 요소들에 대해 타입을 지정한다.

let x: [number, string] = [1, 'a'];

타입스크립트의 튜플은 컴파일된 자바스크립트 코드에서 평범한 배열이다.

let x: [number, string] = [1, 'a'];
x.push(10);

x.push(10)을 보자. 튜플은 각 요소의 타입과 길이가 정해져있다고 했다. 그런데 push메서드를 사용할 수 있다면 길이가 변하므로 말이 안된다. 하지만 타입스크립트에서 튜플 타입으로 지정된 배열에 push를 써서 길이를 늘려도 경고나 에러를 발생하지 않는다.

enum

타입스크립트에서 지원하는 새 데이터타입 enum은 열거형 데이터 타입이라고도 하며 숫자 혹은 문자열로 멤버를 구성하며 각 멤버들은 고유의 숫자 값을 가진다. 멤버에 아무런 값을 할당하지 않는다면, 첫 멤버의 값이 0부터 시작하여 N번째 멤버까지 1씩 증가한다.

const enum Size {Small = 1, Medium, Large};
const mySize: Size = Size.Medium;

하지만, 위와 같이 첫번째 멤버Small의 값이 1로 정해진 상태면, 할당된 숫자부터 N번째 멤버까지 1씩 증가해 나간다.

만약,

enum Size {Small = 1, Medium, Large};

위와 같이 const를 넣어주지 않으면 타입스크립트 컴파일러는 enum 타입의 코드를 최적화하지 않아 상당히 긴 js코드를 생성하게 된다. 그러므로, 간결한 js 코드를 생성하기 위해 const를 넣어주는 것이 좋다.
const 추가 후 컴파일된 js 코드는 아래와 같다.

const mySize = 2;
profile
깃허브: https://github.com/nearworld

0개의 댓글