[TS] 배열과 튜플

TIL

배열 (Arrays)

배열은 자바스크립트의 배열과 크게 다르지 않다.

배열 타입 정의 방법

let numArr: number[] = [1,2,3];

let strArr: string[] = ["hello", "im", "고견"];

Array<배열요소타입> 형태로도 정의할 수 있다. (제네릭 방식)

let boolArr: Array<boolean> = [true, false, true];

 

다양한 타입 요소를 갖는 배열 타입 정의

|를 이용하면 여러 타입 중 하나를 만족하는 타입을 정의할 수 있는데, 이러한 문법을 유니온(Union) 타입이라고 한다.

let multiArr: (number | string)[] = [1, "hello"];

 

다차원 배열 타입 정의

다음과 같이 []를 연달아 작성해 다차원 배열 타입도 정의할 수 있다.

let doubleArr: number[][] = [
    [1, 2, 3],
    [4, 5],
];

 

튜플 (Tuples)

자바스크립트에 없는 타입스크립트의 특수한 타입으로 길이와 타입이 고정된 배열을 의미한다.

let tup1: [number, number] = [1, 2];
let tup2: [number, string, boolean] = [1, "2", true];

 

튜플을 사용하는 이유

다음과 같이 회원 정보를 2차원 배열로 저장하는 상황에서

const users = [
  ["이정환", 1],
  ["이아무개", 2],
  ["김아무개", 3],
  ["박아무개", 4],
];
const users = [
  ["이정환", 1],
  ["이아무개", 2],
  ["김아무개", 3],
  ["박아무개", 4],
  [5, "조아무개"], // <- 새로 추가함
];

이렇게 기존 규칙과 다르게 순서를 잘못 배치할 수 있는데, 자바스크립트는 이런 문제를 확인할 방법이 없다.

같은 코드에 튜플로 타입을 정해준다면, 아래와 같이 타입에러가 발생해 실수를 방지할 수 있다.

'TIL' 카테고리의 다른 글

[TS] 타입 별칭과 인덱스 시그니처  (0) 2025.10.28
[TS] 객체 타입  (0) 2025.10.28
[TS] 원시타입과 리터럴 타입  (0) 2025.10.28
타입스크립트 컴파일러 옵션 설정  (0) 2025.10.27
타입스크립트 실행 환경 설정  (0) 2025.10.27
'TIL' 카테고리의 다른 글
  • [TS] 타입 별칭과 인덱스 시그니처
  • [TS] 객체 타입
  • [TS] 원시타입과 리터럴 타입
  • 타입스크립트 컴파일러 옵션 설정
고견
고견
개발 자국 남기기
  • 고견
    개발자국
    고견
  • 전체
    오늘
    어제
    • 분류 전체보기 (157) N
      • Frontend (29)
        • Next.js (16)
        • JavaScript (7)
      • CS (19) N
        • 자료구조 (9)
        • 알고리즘 (5)
        • 운영체제 (4) N
        • 네트워크 (1) N
      • TIL (93)
      • Dev Log (16)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    ai 감성 일기장
    타입 좁히기
    알고리즘
    페이지 라우터
    react
    javascript
    CS
    클래스
    generic
    memory
    useState
    트러블 슈팅
    앱 라우터
    제네릭
    cs50
    Pages Router
    C
    배열
    Trouble Shooting
    emotion diary
    함수 타입
    바닐라 자바스크립트
    algorithm
    Next.js
    인터페이스
    자료구조
    App Router
    Spa
    문자열
    typescript
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
고견
[TS] 배열과 튜플
상단으로

티스토리툴바