Partial은 TypeScript에서 제공하는 타입 유틸리티 함수로, 주어진 타입의 모든 프로퍼티를 optional하게 만들어주는 기능을 제공합니다. 즉, 주어진 타입의 각 프로퍼티에 ?를 붙여서 각 프로퍼티를 optional하게 만든 새로운 타입을 만들어줍니다.
예를 들어,
interface Person {
name: string;
age: number;
address: string;
}
type PartialPerson = Partial<Person>;
위와 같이 정의하면, PartialPerson은 Person 타입의 name, age, address 프로퍼티를 각각 optional하게 만든 타입이 됩니다. 즉,
let john: PartialPerson = {
name: 'John Doe'
};
위와 같이 john 변수는 name 프로퍼티만 가지고 있으면서도 올바른 타입입니다.