Özet - Objeler
- TypeScript kursu
- Başlangıç
- Ders 41/89
- 4 dk
Nesne türlerini birleştirerek bir kullanıcı kartı yazarsın.
Özet - Objeler
Nesne türleri veriyi kesin olarak modellemeni sağlar: şekil özellikleri tanımlar, ? isteğe bağlı özellik işaretler, readonly değiştirilemez özellik belirler. Birlikte kullanıldığında güvenli ve net veri yapıları oluşturulur.
let kullanici: {
readonly id: number;
ad: string;
eposta?: string
} = { id: 1, ad: "Ali" };Bu üç özellik birlikte esnek ama güvenli nesne türleri yaratır.
Uygulama Kullanıcı kartı yaz
kullanici adında bir değişken tanımla; türü { readonly id: number; ad: string; eposta?: string } ve değeri { id: 1, ad: "Zeynep", eposta: "z@x.com" } olsun. kullanici.eposta değerini console.log ile yazdır.
Başlangıç kodu
// kullanici adında bir nesne tanımla
// id özelliği readonly sayı, ad özelliği zorunlu dize, eposta özelliği isteğe bağlı dize olsun
// id değeri 1, ad değeri "Zeynep", eposta değeri "z@x.com" olsun
// kullanici.eposta değerini yazdırÖrnek çözüm
let kullanici: { readonly id: number; ad: string; eposta?: string } = { id: 1, ad: "Zeynep", eposta: "z@x.com" };
console.log(kullanici.eposta);Beklenen çıktı
z@x.com
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Hangisi <code>{ ad: "Ali" }</code> değerine izin verir ama <code>ad</code>'a yeniden atama yapılmasını engeller?
- { readonly ad: string } Doğru cevap
- { ad: string; tel?: string }
- { readonly id: number; ad: string }
- { ad?: string }
Açıklama: <code>{ readonly ad: string }</code>, <code>ad</code>'ı hem zorunlu hem değiştirilemez yapar; değer <code>{ ad: "Ali" }</code> geçerlidir ve <code>ad</code> sonradan değiştirilemez.
2 İsteğe bağlı özellik türünü tamamla
let kullanici: { readonly id: number; ad: string; eposta?: ____ } = { id: 1, ad: "Ali" };
let kullanici: { readonly id: number; ad: string; eposta?: string } = { id: 1, ad: "Ali" };
Açıklama: <code>eposta</code> bir e-posta adresi olduğundan türü <code>string</code> olmalıdır; <code>number</code> ve <code>boolean</code> e-posta için yanlış tür, <code>void</code> ise özellik türü değildir.
3 Nesne kavramları özeti
| Kavram | Anlamı |
|---|---|
{ ad: string } |
Zorunlu özellik |
tel?: string |
İsteğe bağlı özellik |
readonly id: number |
Değiştirilemez özellik |
Object type |
Nesnenin şekli |