CodeBlanks Logo Icon CodeBlanks

Readonly properties

readonly ile değiştirilemez özellikleri öğrenirsin.

Readonly properties

Nesne özelliklerini değiştirilemez yapmak için özellik adından önce readonly yazarsın. Bir kez atandıktan sonra readonly özellik değiştirilemez.

let kisi: { readonly id: number; ad: string } = {
  id: 1,
  ad: "Ali"
};

readonly, özelliğin sonradan değiştirilmesini engeller.

Readonly özelliklerin kullanımı

Readonly özellikler, hiç değişmemesi gereken kimlik veya kod gibi değerler için uygundur. Readonly özelliğe atama yapmaya çalışmak derleme hatası verir.

let kisi: { readonly id: number } = { id: 1 };
kisi.id = 2;  // hata: readonly

Readonly, kazara değiştirmeyi derleme aşamasında engeller.

Uygulama Readonly özellikli nesne

urun adında bir değişken tanımla; türü { readonly kod: string; fiyat: number } ve değeri { kod: "A100", fiyat: 50 } olsun. urun.kod değerini console.log ile yazdır.

Başlangıç kodu

index.ts
// urun adında bir nesne tanımla
// kod özelliği readonly dize, fiyat özelliği sayı olsun
// kod değeri "A100", fiyat değeri 50 olsun
// urun.kod değerini yazdır

Örnek çözüm

index.ts
let urun: { readonly kod: string; fiyat: number } = { kod: "A100", fiyat: 50 };
console.log(urun.kod);

Beklenen çıktı

A100

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 <code>readonly id: number</code> neyi belirtir?

  • id özelliği dize türündedir
  • id özelliği herhangi bir tür olabilir
  • id özelliği isteğe bağlıdır
  • id özelliği oluşturulduktan sonra değiştirilemez Doğru cevap

Açıklama: <code>readonly</code>, özelliğin ilk atamadan sonra değiştirilemeyeceğini belirtir; <code>id</code> oluşturulduktan sonra yeniden atanamaz.

2 Özelliği readonly yap

Soru
let kullanici: { ____ id: number; ad: string } = { id: 1, ad: "Ali" };
Cevap
let kullanici: { readonly id: number; ad: string } = { id: 1, ad: "Ali" };

Açıklama: Özelliğin değiştirilemez olması için <code>readonly</code> anahtar kelimesi özellik adından önce yazılır; <code>let</code>, <code>const</code> ve <code>static</code> özellik değiştirici olarak kullanılmaz.

3 Readonly property kavramları

Kavram Anlamı
readonly id: number Değiştirilemez id özelliği
id: number (readonly yok) Değiştirilebilir id özelliği
readonly (özellik önünde) Özelliği sabit yapar
Readonly property Sonradan atanamaz

Başlangıç bölümündeki tüm dersler