Arrow functions
- Node.js kursu
- Başlangıç
- Ders 73/116
- 5 dk
() => {} ile arrow function sözdizimini öğrenirsin.
Arrow functions
Arrow function, fonksiyonları daha kısa yazmanın yoludur. => (ok) işaretiyle tanımlanır. Özellikle tek satırlık dönüşümlerde ve dizi metotlarında yaygın kullanılır.
İki yazımı vardır. Tek parametreli kısa yazım: const sq = n => n * n;. Çok parametreli yazımda parantez zorunludur: const add = (a, b) => a + b;. Parametre yoksa boş parantez: const pi = () => 3.14;.
Arrow function'ın bir avantajı, kısa gövdede return yazımına gerek olmamasıdır. Tek ifade döndürüyorsan süslü parantez de gerekmez; ifade otomatik olarak döndürülür.
Kapalı return
Arrow function'da gövde tek bir ifadeden oluşuyorsa, süslü parantez ve return anahtar sözcüğü atlanabilir. Buna kapalı return (implicit return) denir. İfade otomatik olarak döndürülür.
Örnek: const sq = n => n * n; ile const sq = n => { return n * n; } aynı anlama gelir. İlk yazım daha kısa ve okunaktır; tek satırlık dönüşümlerde tercih edilir.
Süslü parantez açarsan kapalı return kalkar; o zaman return yazman gerekir. const sq = n => { n * n; } yazımı undefined döndürür çünkü return yoktur. Bu ayrım sık yapılan bir hatadır.
Uygulama Kare al fonksiyonu
sq adında bir arrow function tanımla: const sq = (n) => n * n;. sq(7) çağrısının sonuçunu console.log ile yazdır.
Başlangıç kodu
// sq arrow function'ını tanımla ve çağrı sonuçunu yazdırÖrnek çözüm
const sq = (n) => n * n;
console.log(sq(7));Beklenen çıktı
49
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Arrow parçalarını eşle
| Kavram | Anlamı |
|---|---|
(a, b) |
Parametre listesi |
=> |
Ok işareti |
a + b |
Döndürülen ifade |
const add |
Bağlama adı |
2 Hangisi geçerli arrow function?
- const f = (a) => a * 2; Doğru cevap
- const f = function (a) => a * 2;
- function (a) => a * 2
- const f = (a) -> a * 2;
Açıklama: (a) => a * 2 geçerli arrow function ve kapalı return kullanır.
3 Kare al
const sq = n => ____;
const sq = n => n * n;
Açıklama: n => n * n ifadesi kare alır ve kapalı return kullanır.