Partial

agnusdei·2023년 7월 5일
0

Partial은 TypeScript의 유틸리티 타입 중 하나입니다. 이 타입은 제네릭으로 전달된 타입의 모든 속성을 선택적으로 만들어주는 역할을 합니다. 즉, Partial을 사용하면 기존 타입의 모든 속성이 선택 사항이 되어 해당 속성을 생략할 수 있습니다.

예를 들어, 다음과 같은 인터페이스가 있다고 가정해 봅시다:

interface User {
  name: string;
  age: number;
  email: string;
}

이제 Partial<User>를 사용하여 선택적인 속성을 가진 타입을 만들 수 있습니다:

type PartialUser = Partial<User>;

PartialUser 타입은 다음과 같이 정의됩니다:

type PartialUser = {
  name?: string | undefined;
  age?: number | undefined;
  email?: string | undefined;
}

각 속성에 ? 기호가 추가되었고, undefined가 타입으로 할당되었습니다. 이제 PartialUser를 사용하면 name, age, email 속성을 생략하거나 값을 지정할 수 있습니다.

const user: PartialUser = {};
user.name = 'John';
user.age = 25;

Partial은 주로 객체의 일부 속성을 선택적으로 만들어야 할 때 사용됩니다. 예를 들어, 어떤 함수가 User 타입의 인자를 받아들이는데, 사용자 정보를 업데이트할 때 모든 속성을 필수로 받지 않고 일부 속성만 업데이트하고 싶을 경우에 Partial<User>를 사용할 수 있습니다.

function updateUser(user: Partial<User>) {
  // user 객체 업데이트 로직
}

updateUser({ name: 'John' }); // age, email 속성은 선택 사항

Partial은 객체의 속성을 선택적으로 만들어 유연성을 제공하며, 코드를 간결하게 유지할 수 있도록 도와줍니다.

0개의 댓글