CodeBlanks Logo Icon CodeBlanks

Özet - Enum

Enum'ları kullanarak bir sipariş durumu takip programı yazarsın.

Enum özeti

Enum, adlandırılmış sabitleri tek çatı altında toplar. Numeric enum otomatik artar ve ters eşleme destekler. String enum okunabilir dize değerler verir. const enum ise derleme zamanında değerleri kullanım yerlerine gömer. Sipariş durumu takibi gibi yapısal verilerde enum, hem tip güvenliği hem de okunabilirlik sağlar.

enum SiparisDurumu { Bekle = "bekle", Teslim = "teslim" }
let durum: SiparisDurumu = SiparisDurumu.Bekle;
console.log(durum);  // "bekle"

İhtiyaca göre numeric, string veya const enum seçilir.

Uygulama Sipariş durumu takip programı

SiparisDurumu adında bir const tanımla; Bekle "bekle" değerine ve Teslim "teslim" değerine eşlensin (string enum davranışı). durum adında bir değişken tanımla ve değerini SiparisDurumu.Teslim yap. durum değerini console.log ile yazdır.

Başlangıç kodu

index.ts
// SiparisDurumu adında bir const tanımla
// Bekle "bekle" ve Teslim "teslim" ile eşle
// durum değişkenini SiparisDurumu.Teslim ile tanımla
// durum değerini yazdır

Örnek çözüm

index.ts
const SiparisDurumu = { Bekle: "bekle", Teslim: "teslim" };
let durum = SiparisDurumu.Teslim;
console.log(durum);

Beklenen çıktı

teslim

Soru ve cevaplar

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

1 Günlük kayıtlarında okunabilir değer göstermek için hangi enum uygundur?

  • const enum Durum { Bekle, Hazir }
  • enum Durum { Bekle = 0, Hazir = 1 }
  • enum Durum { Bekle = "bekle", Hazir = "hazir" } Doğru cevap
  • enum Durum { Bekle, Hazir }

Açıklama: String enum, günlük kayıtlarında sayı yerine anlamlı dize gösterir; numeric ve const enum seçenekleri yalnızca sayı üretir.

2 Sipariş durumu enum'ını tamamla

Soru
enum SiparisDurumu { Bekle = "bekle", Gonderildi = ____ }
Cevap
enum SiparisDurumu { Bekle = "bekle", Gonderildi = "gonderildi" }

Açıklama: <code>Gonderildi</code> üyesinin değeri <code>"gonderildi"</code> olmalı; <code>"bekle"</code> başka üyeye ait, <code>"Gonderildi"</code> yanlış yazım, <code>"teslim"</code> ise yanlış durum.

3 Enum türleri özeti

Kavram Anlamı
Numeric enum Otomatik artan sayı sabitleri
String enum Okunabilir dize sabitleri
const enum Derleme zamanında gömülür
Reverse mapping Değerden isme geçiş

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