[typescript] 타입 별칭을 사용하여 인덱스 접근 타입 정의하기

타입스크립트에서는 인덱스 접근 타입을 사용하여 객체의 속성에 접근하는 방법을 정의할 수 있습니다. 타입 별칭을 사용하여 인덱스 접근 타입을 정의할 수 있어서 코드를 더 읽기 쉽고 유지보수하기 쉽게 만들 수 있습니다.

type MyObj = {
  name: string;
  age: number;
  city: string;
};

type PropertyType = MyObj['name']; // string

위의 예제에서 MyObj['name']string 타입입니다. 이것을 타입 별칭인 PropertyType으로 정의하여 나중에 재사용할 수 있습니다.

인덱스 접근 타입과 조건부 타입

인덱스 접근 타입은 조건부 타입과 함께 사용될 때 특히 유용합니다. 예를 들어, 다음과 같이 Pick이라는 조건부 타입과 함께 사용할 수 있습니다.

type MyObj = {
  name: string;
  age: number;
  city: string;
};

type NameAndAge = Pick<MyObj, 'name' | 'age'>; // { name: string; age: number; }

요약

타입 별칭과 인덱스 접근 타입을 함께 사용하여 객체의 속성에 접근하는 방법을 정의할 수 있습니다. 이를 활용하면 코드를 더 읽기 쉽고 유지보수하기 쉽도록 만들 수 있습니다.

참고 자료: 타입스크립트 핸드북 - 인덱스 접근 타입