TypeScript Partial Utility Type
`Partial< T >` bir objenin tüm alanlarını opsiyonel hale getirir. Özellikle eksik bilgiyle işlem yapılması gereken durumlarda çok kullanışlıdır.
Partial Ne Yapar?
type User = {
id: number;
name: string;
email: string;
};
type PartialUser = Partial<User>;
// PartialUser:
// {
// id?: number;
// name?: string;
// email?: string;
// }
`Partial` sayesinde, bir tipin her alanını ayrı ayrı `?` ile işaretlemeden, hepsini tek seferde opsiyonel yapabiliriz.
Pratik Kullanım: Güncelleme Fonksiyonu
function updateUser(id: number, update: Partial<User>) {
console.log(`Updating user ${id}:`, update);
}
updateUser(1, { name: "Alice" });
// Output: Updating user 1: { name: 'Alice' }
updateUser(2, { email: "bob@example.com" });
// Output: Updating user 2: { email: 'bob@example.com' }
Özellikle güncelleme işlemlerinde her alan zorunlu olmadığından, `Partial< T >` kullanımı işimizi kolaylaştırır.
Eksik Veriyle Çalışma
const draft: Partial<User> = {
email: "test@example.com"
};
console.log(draft);
// Output: { email: 'test@example.com' }
Veri henüz tamamlanmamışken dahi, `Partial` ile güvenli bir şekilde obje oluşturabiliriz.
Ne Zaman Kullanılır?
Form verileri, opsiyonel ayarlar, PATCH API işlemleri gibi durumlarda `Partial< T >` oldukça faydalıdır.
Geri