Geri

TypeScript’te Map Access (Haritalı Erişim)

İndeksli erişim tipleri, bir nesne tipinden köşeli parantez kullanarak belirli bir özelliğin tipini çıkarmanıza olanak tanır.

`keyof` ifadesiyle birlikte kullanıldığında, nesne yapılarını analiz eden dinamik ve güçlü yardımcı tipler oluşturabilirsiniz.

`keyof` ile Nesne Anahtarlarını Almak

`keyof`, bir nesne tipinin tüm özellik adlarını (anahtarlarını) içeren bir union oluşturmak için kullanılır. Bu anahtarlar doğrudan tip olarak da kullanılabilir.

type User = {
    name: string;
    age: number;
  }
  
  type Keys = keyof User; // 'name' | 'age'
  
  const key: Keys = 'name';

Köşeli Parantez ile Özellik Tipine Erişim

`T[K]` şeklindeki köşeli parantez notasyonu ile belirli bir özelliğin tipini alabilirsiniz. Bu, bazı değerleri ayırmak veya birleştirmek istediğinizde kullanışlıdır.

type User = {
    name: string;
    age: number;
  }
  
  type NameOrAge = User['name'] | User['age']; 
  // string | number

Tüm Özellik Tiplerine Aynı Anda Erişim

`keyof` ile indeksli erişimi (`T[keyof T]`) birleştirerek bir nesne tipindeki tüm özelliklerin tiplerinden oluşan bir union elde edebilirsiniz.

type User = {
    name: string;
    surname: string;
    age: number;
    isManager: boolean;
  }
  
  type ValueUnion = User[keyof User]; 
  // string | number | boolean

Sonuç

Map access (harita erişimi) ve anahtar arama tipleri, generic yardımcılar oluştururken veya nesne yapıları üzerinde kısıtlamalar tanımlarken kritik öneme sahiptir.

Özellik tiplerini çıkarmayı ve işlemeyi bilmek, kodunuzu daha esnek, yeniden kullanılabilir ve tip açısından güvenli hale getirir.

Geri