[typescript] 타입스크립트에서의 맵드 타입을 통한 변환 방식

타입스크립트(TypeScript)에서 맵드(Mapped) 타입을 사용하면 기존 타입에서 새로운 타입을 쉽게 만들 수 있습니다. 맵드 타입은 기존의 타입에서 새로운 타입을 생성할 때 많은 반복 작업을 줄여줍니다.

맵드 타입의 기본 구조

맵드 타입은 기존의 타입을 변환하여 새로운 타입을 만드는 TypeScript의 기능입니다. 맵드 타입은 다음과 같은 구조를 갖습니다.

type NewType = {
  [Property in keyof OldType]: NewProperty;
};

위의 코드에서 NewType은 새로 생성될 타입을 나타내고, OldType은 기존의 타입을 나타냅니다. Property in keyof OldType은 기존 타입의 모든 속성에 대해 반복하면서 새로운 타입의 속성을 정의할 수 있도록 해줍니다. NewProperty은 각 속성에 대한 새로운 타입을 정의합니다.

맵드 타입의 활용 예제

다음은 맵드 타입을 사용하여 기존의 타입에서 새로운 타입을 만드는 예제입니다.

type Person = {
  firstName: string;
  lastName: string;
  age: number;
};

type ReadonlyPerson = {
  readonly [Property in keyof Person]: Person[Property];
};

위의 코드에서 ReadonlyPersonPerson 타입에서 모든 속성을 읽기 전용으로 변환한 새로운 타입을 나타냅니다. 맵드 타입을 사용하여 각 속성에 readonly를 추가함으로써 새로운 타입을 정의할 수 있습니다.

결론

타입스크립트의 맵드 타입은 기존의 타입을 변환하여 새로운 타입을 만드는 데 유용한 기능입니다. 맵드 타입을 활용하면 타입을 보다 쉽게 변환하고 재사용할 수 있으며, 코드의 반복 작업을 줄일 수 있습니다.

더 많은 맵드 타입의 활용 방법과 예제는 타입스크립트 공식 문서를 참고하시기 바랍니다.