튜플
타입스크립트에는 자바스크립트에는 존재하지 않는 타입이 있습니다. 그 중 하나가 튜플입니다. 튜플은 길이와 타입이 고정된 배열을 의미합니다.
튜플은 어디에 사용될까요?
다음과 같이 배열의 첫 번째 요소는 사용자 인덱스, 두 번째 요소는 사용자 아이디 그리고 세 번째 요소는 비밀번호인 user
배열이 있다고 가정하겠습니다:
그리고 이 규칙으로 다른 사용자들의 정보도 변수에 담고 있다고 가정하겠습니다.
그런데 이 규칙을 모르는 개발자가 아이디와 비밀번호의 순서를 바꾸는 등, 배열에 담긴 데이터의 순서를 무시하고 배열을 만들면 어떻게 될까요?
아마 해당 배열을 사용하는 코드에서 문제가 발생할 가능성이 있을 겁니다.
이러한 문제를 해결하기 위해서 타입스크립트에는 튜플이라는 개념을 도입하였습니다. 튜플 타입을 만드는 방법은 간단합니다. 필요한 데이터 타입을 원하는 데이터 길이만큼 정해주면 됩니다.
간단하게 튜플을 완성하였습니다.
이제 누군가 튜플의 타입 순서에 맞지 않게 데이터를 넣으려고 하면 에러가 표시됩니다.
혹은 튜플의 정해진 길이에 맞지 않아도 에러가 발생합니다.
하지만 맹점도 존재합니다. 바로 push
메서드를 사용하면 문제없이 배열의 길이가 늘어난다는 점입니다.
push
메서드를 사용하면 튜플 규칙을 무시하는 문제점이 있지만 배열의 타입 순서와 배열의 길이를 정할 수 있다는 점은 튜플의 유용한 특징입니다.