İşlevlerde Rest Parametreleri
Her sayıda bağımsız değişken kabul eden işlevlerin türünü belirleyin.
İşlevlerde Rest Parametreleri, CoddyKit'te ücretsiz bir TypeScript Academy dersidir. Bu, 4 dersinin 1. 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.
Çok Sayıda Bağımsız Değer Alan İşlevler
Kalan parametreleri, bir işlevin herhangi bir sayıda bağımsız değer almasını ve bunları tek bir dizide toplamasını sağlar. TypeScript bu diziyi türlendirerek değişken uzunluktaki çağrılarda bile güvenlik sunar.
Temel Kalan Parametresi
Son parametrenin başına ... koyun ve ona bir dizi türü verin. İşlevin içinde normal bir dizi gibi davranır.
function sum(...nums: number[]): number {
return nums.reduce((a, b) => a + b, 0)
}
console.log(sum(1, 2, 3, 4)) // 10Sıfır Bağımsız Değerle Çağırma
Kalan parametresi sıfır bağımsız değerle eşleşebilir; dizi basitçe boş olur. Bağımsız değersiz durum için özel işlem gerekmez.
function sum(...nums: number[]): number {
return nums.reduce((a, b) => a + b, 0)
}
console.log(sum()) // 0Sabit Parametrelerden Sonra Kalan Parametresi
Kalan parametresi sabit parametrelerin ardından gelebilir; ancak son parametre olmalıdır. Sabit parametreler önce bağlanır, geriye kalan her şey kalan dizisine gider.
function join(separator: string, ...parts: string[]): string {
return parts.join(separator)
}
console.log(join("-", "a", "b", "c")) // a-b-cYalnızca Bir Kalan Parametresi ve Her Zaman Sonda
En fazla bir kalan parametreniz olabilir ve ardından hiçbir şey gelemez. Kalandan sonra bir parametre koymak söz dizimi hatasıdır.
// function bad(...nums: number[], last: number) {} // Error
function ok(first: number, ...rest: number[]) {
return first + rest.length
}
console.log(ok(10, 1, 2)) // 12Tür Belirtilmiş Öğe Kısıtlamaları
Kalan dizisinin öğe türü her bağımsız değeri kısıtlar. Yanlış tür geçirmek derleme zamanında yakalanır.
function tags(...labels: string[]): string {
return labels.join(",")
}
console.log(tags("a", "b"))
// tags("a", 5) // Error: 5 is not a stringBirleşim Türüyle Kalan Parametresi
Öğe türü bir birleşim olabilir ve farklı türlerde bağımsız değerlere izin verebilir. İçeride kullanmadan önce her öğenin türünü daraltın.
function show(...items: (string | number)[]): string {
return items.map(String).join(" ")
}
console.log(show("x", 1, "y", 2)) // x 1 y 2Demet Türleriyle Kalan Parametresi
Kalan parametresi, sabit ve değişken uzunluklu bölümlerden oluşan bir şekli tanımlamak için demet olarak türlendirilebilir. Burada ilk bağımsız değer bir metindir ve ardından istenen sayıda sayı gelir.
function record(...args: [string, ...number[]]): string {
const [label, ...values] = args
return label + ": " + values.join(",")
}
console.log(record("scores", 9, 8, 7))Demet Kalanı Öğe Sayısını Zorunlu Kılar
Demet kalan türünde baştaki öğeler zorunludur. Zorunlu ilk bağımsız değeri atlamak, sıradan bir dizidekinden daha güçlü bir kısıtlama olan derleme hatasına neden olur.
function record(...args: [string, ...number[]]): number {
return args.length
}
console.log(record("x")) // 1
// record() // Error: missing string argumentKalan Çağrısına Yayarak Aktarma
Çağrı noktasında yayma kullanarak mevcut bir diziyi kalan parametresine aktarabilirsiniz. Dizinin öğe türü parametrenin türüyle eşleşmelidir.
function sum(...nums: number[]): number {
return nums.reduce((a, b) => a + b, 0)
}
const values = [1, 2, 3]
console.log(sum(...values)) // 6Uygulamada Kalan Parametreleri
Kalan parametreleri günlükleme yardımcılarını, biçimlendiricileri ve matematik araçlarını mümkün kılar; yani ortak veya yapılandırılmış bir türle değişken sayıda girdi işleyen her şeyi.
function max(first: number, ...rest: number[]): number {
return rest.reduce((m, n) => (n > m ? n : m), first)
}
console.log(max(3, 7, 2, 9, 1)) // 9Kısa Kontrol
Tür belirtilmiş kalan parametreleri konusundaki anlayışınızı sınayın.
Özet
Kalan parametreleri, ek bağımsız değerleri tür belirtilmiş bir dizide toplamak için son parametrede ... kullanır. Sonda bulunmaları gerekir ve yalnızca bir tane olabilir. Sabit ve değişken uzunluklu şekilleri ifade edip öğe sayısını zorunlu kılmak için basit bir dizi, birleşim dizisi veya demet olarak türlendirin. Bir kalan parametresine değer sağlamak için çağrı noktasında mevcut bir diziyi yayarak aktarın.
Sıkça Sorulan Sorular
“İşlevlerde Rest Parametreleri” dersi ücretsiz mi?
Evet — “İşlevlerde Rest Parametreleri” 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.
“İşlevlerde Rest Parametreleri” dersinde ne öğreneceğim?
Her sayıda bağımsız değişken kabul eden işlevlerin türünü belirleyin. 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 1. dersidir.
“İşlevlerde Rest Parametreleri” 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
- İşlevlerde Rest Parametreleri
- Dizilerde ve Nesnelerde Yayma
- Demet Rest Ögeleri
- Değişken Sayıda Bağımsız Değişken Alan İşlevlerin Türünü Belirleme