const Doğrulamaları ve as const
Değişmez ve demet türlerini kesin biçimde çıkarmak için as const kullanın
const Doğrulamaları ve as const, CoddyKit'te ücretsiz bir TypeScript Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, TypeScript Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. TypeScript Academy kursu toplamda 4 dersten oluşur.
as const Nedir?
as const, TypeScript'e bir ifade için mümkün olan en belirli değişmez türleri çıkarsamasını ve tüm özellikleri readonly yapmasını söyleyen bir tür belirtimidir.
const colors = ["red", "green", "blue"] as const;
// type: readonly ["red", "green", "blue"]as const ile Genişlemeyi Önleme
as const olmadan dizilerdeki ve nesnelerdeki dize değerleri string türüne genişler. as const ile değişmez türleri olarak kalırlar.
const dir1 = { direction: "left" };
// dir1.direction: string
const dir2 = { direction: "left" } as const;
// dir2.direction: "left"Nesne Değişmezlerinde as const
as const kullanılan bir nesnenin her özelliği readonly olur ve değişmez türünü özyinelemeli olarak korur.
const theme = {
color: "dark",
sizes: { sm: 8, md: 16 },
} as const;
// theme.color: "dark", theme.sizes.sm: 8 (all readonly)Demet Türleri için as const
as const kullanılan diziler, değişmez öğe türlerine sahip salt okunur demetlere dönüşür — sabit bağımsız değişken listeleri tanımlamak için kullanışlıdır.
const args = [1, "hello", true] as const;
// type: readonly [1, "hello", true]as const'tan Birleşim Türleri Türetme
Yaygın bir kalıp: değerlerden oluşan bir as const dizisi tanımlayın, ardından typeof ve dizin erişimini kullanarak bundan bir birleşim türü türetin.
const STATUSES = ["pending", "active", "done"] as const;
type Status = typeof STATUSES[number];
// type Status = "pending" | "active" | "done"İşlev Bağımsız Değişkenlerinde as const
Çağrı sınırı boyunca değişmez türleri korumak için işlevleri çağırırken satır içinde as const kullanabilirsiniz.
function setMode(mode: "dark" | "light") {}
setMode("dark" as const); // safe, preserves literalSalt Okunur Özyineleme
as const, Readonly işlemini özyinelemeli olarak uygular. İç içe nesnelerin ve dizilerin tümü salt okunur hâle gelir ve derin değişiklikler önlenir.
const config = { db: { host: "localhost", port: 5432 } } as const;
// config.db.port = 5433; // Error: readonlyas const ve Object.freeze
as const derleme zamanı belirtimidir — çalışma zamanında koruma sağlamaz. Object.freeze çalışma zamanında işler. Birbirini tamamlayan rollere sahiptirler.
const obj = Object.freeze({ x: 1 }); // runtime immutability
const obj2 = { x: 1 } as const; // compile-time literal typesSabitlik Belirtimleri ve Tür Açıklamaları
Bir tür açıklaması türü genişletir: const x: string = "hi" ifadesi string türünü verir. as const ise türü daraltır: const x = "hi" as const ifadesi "hi" türünü verir.
const a: string = "hi"; // type: string
const b = "hi" as const; // type: "hi"Pratik Kullanım: Numaralandırma Benzeri Nesneler
Birçok kod tabanı, numaralandırmaların sorunlarından kaçınırken tür güvenliğini korumak için numaralandırmalara alternatif olarak as const nesnelerini kullanır.
const Direction = { Up: "UP", Down: "DOWN" } as const;
type Direction = typeof Direction[keyof typeof Direction];
// "UP" | "DOWN"Özet: as const
as const, TypeScript'in değişmez türleri çıkarmasını ve tüm özellikleri salt okunur olarak ele almasını sağlar. Dizilerden kesin birleşim türleri türetmek ve güvenli yapılandırma nesneleri oluşturmak için gereklidir.
Hızlı Kontrol
as const bir dizi üzerinde ne yapar?
Öğrendikleriniz
as const, değişmez türleri sabitlemek, salt okunur yapılar oluşturmak ve dizilerden kesin birleşim türleri türetmek için güçlü bir araçtır. Gelişmiş TypeScript kalıplarının temel taşlarından biridir.
Sıkça Sorulan Sorular
“const Doğrulamaları ve as const” dersi ücretsiz mi?
Evet — “const Doğrulamaları ve as const” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve TypeScript Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. TypeScript Academy kursu toplamda 4 dersten oluşur.
“const Doğrulamaları ve as const” dersinde ne öğreneceğim?
Değişmez ve demet türlerini kesin biçimde çıkarmak için as const kullanın TypeScript Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
TypeScript Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te TypeScript Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.
“const Doğrulamaları ve as const” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu TypeScript Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her TypeScript Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Tür Genişletme ve Daraltma Mekanizmaları
- Bağlamsal Türlendirme: Bağlamdan Çıkarım
- Tazelik ve Fazladan Özellik Denetimi
- const Doğrulamaları ve as const