Yükleniyor...

Ok Fonksiyonları

Ok Fonksiyonları (Arrow Functions) JavaScript’te fonksiyon yazımını daha kısa, okunabilir ve modern hale getiren bir özelliktir. Geleneksel fonksiyonlara kıyasla hem sözdizimi sadeleşir hem de this bağlamı (context) daha öngörülebilir hale gelir. Bu özellik, özellikle kişisel web siteleri, bloglar, e-ticaret platformları ve haber sitelerinde sıkça kullanılır. Örneğin, kullanıcı etkileşimlerini yakalamak, verileri işlemek veya DOM manipülasyonları yapmak gibi durumlarda ok fonksiyonları kodun okunabilirliğini artırır ve hataları azaltır.
Ok fonksiyonlarını öğrenmek, bir ev inşa etmeye benzer: temeli doğru atarsanız, tüm odaları (fonksiyonlar) düzgün ve uyumlu bir şekilde yerleştirebilirsiniz. Kodunuzun modüler ve anlaşılır olması, tıpkı bir odanın dekorasyonu gibi, hem sizin hem de ekip arkadaşlarınızın işini kolaylaştırır. Bu derste, ok fonksiyonlarının temellerini, tek satırlık dönüşler (implicit return), parametre kullanımı, ve this bağlamını nasıl yönettiklerini öğreneceksiniz. Ayrıca pratik örneklerle, bir blogdaki post filtreleme, e-ticaret sitesinde fiyat hesaplama ve haber sitesinde dinamik içerik güncelleme gibi senaryolara uygulayacaksınız. Amacımız, ok fonksiyonlarını hem kısa hem de güçlü şekilde kullanarak, modern JavaScript projelerinde güvenle uygulayabilmenizi sağlamaktır.

Temel Örnek

javascript
JAVASCRIPT Code
// Basic arrow function to add two numbers
const topla = (a, b) => a + b;

// Usage
console.log(topla(5, 10)); // Output: 15

Yukarıdaki örnekte, iki parametre alan bir ok fonksiyonu tanımladık: a ve b. Arrow (=>) operatörü ile function anahtar kelimesini kullanmadan fonksiyon yazıyoruz. Tek satırlık bir ifade olduğu için dönüş (return) otomatik olarak gerçekleşir; buna implicit return denir.
Bu yapı, e-ticaret sitelerinde ürün fiyatlarını hızlıca hesaplamak veya blogda post sayısını toplamak gibi hızlı işlemler için idealdir. Ayrıca ok fonksiyonları kendi this bağlamını oluşturmaz; bulunduğu kapsamın this değerini kullanır. Bu, DOM manipülasyonları veya event handlerlarda önemli bir avantaj sağlar, çünkü this’in beklenmedik şekilde değişmesini engeller.

Pratik Örnek

javascript
JAVASCRIPT Code
// Update product prices on e-commerce site
const urunler = \[
{ isim: "Laptop", fiyat: 1200 },
{ isim: "Telefon", fiyat: 800 }
];

// Increase price by 10%
const guncelUrunler = urunler.map(urun => ({
...urun, // preserve other properties
fiyat: urun.fiyat * 1.1
}));

console.log(guncelUrunler);

Bu pratik örnekte, map fonksiyonu ile ürünlerin fiyatlarını %10 artırıyoruz. Ok fonksiyonu kullanarak her ürün için yeni bir obje oluşturuyoruz. Spread operator (...urun) ile mevcut özellikleri koruyor, sadece fiyat değerini değiştiriyoruz. Bu yöntem, orijinal diziyi değiştirmeden yeni bir dizi oluşturur; yani immutable (değişmez) veri mantığını uygular.
Ok fonksiyonları, kısa ve okunabilir bir şekilde array metodlarıyla (map, filter, reduce) kullanılabilir. Bu sayede blog postlarını filtrelemek, haber sitelerinde içerik güncellemeleri yapmak veya kişisel web sitesinde kullanıcı etkileşimlerini yönetmek kolaylaşır. Bu yaklaşım hem hataları azaltır hem de kodun bakımını kolaylaştırır.

En iyi uygulamalar: 1) Çok satırlı fonksiyonlarda {} ve return kullanmak, 2) Fonksiyonları const ile tanımlamak, 3) Parametre varsayılanları ve Rest parametreleri kullanmak, 4) Büyük dizilerle çalışırken performansı düşünmek.
Kaçınılması gereken hatalar: 1) {} kullandığınızda return’u unutmak, 2) Event handlerlarda yanlış this kullanımı, 3) Döngüler içinde anonim ok fonksiyonlarıyla bellek sızıntısı, 4) Büyük dizilerde map/filter ile gereksiz obje oluşturmak.
Hata ayıklama ipuçları: DevTools ile this’i kontrol etmek, console.log ile değerleri izlemek, modüler fonksiyonlar oluşturmak. Öneri: Küçük yardımcı fonksiyonları ok fonksiyonları ile başlatıp, yavaş yavaş projedeki diğer fonksiyonları refactor etmek.

📊 Hızlı Referans

Property/Method Description Example
Arrow Function Syntax Kısa fonksiyon tanımı const topla = (a,b) => a+b
Implicit Return Tek satırlık dönüş const karesi = x => x*x
This Binding Bu fonksiyon kendi this oluşturmaz obj.metot = () => console.log(this)
Default Parameters Varsayılan parametreler const carp = (a,b=1) => a*b
Rest Parameters Kalan parametreleri diziye alır const toplaHepsi = (...nums) => nums.reduce((a,b)=>a+b,0)

Özet ve sonraki adımlar: Ok fonksiyonları, kısa sözdizimi, implicit return ve predictable this davranışıyla modern JavaScript projelerinde vazgeçilmezdir. HTML DOM manipülasyonu, event handling ve backend ile veri iletişimi için idealdir. Sonraki konular: Promise ve Async/Await, ileri array metodları, React veya Vue gibi frameworklerde ok fonksiyonlarını kullanmak. Tavsiye: Önce küçük yardımcı fonksiyonları refactor ederek öğrenmeye başlayın, projede adım adım tüm fonksiyonları ok fonksiyonlarına dönüştürün.

🧠 Bilginizi Test Edin

Başlamaya Hazır

Bilginizi Test Edin

Bu konudaki anlayışınızı pratik sorularla test edin.

3
Sorular
🎯
70%
Geçmek İçin
♾️
Süre
🔄
Deneme

📝 Talimatlar

  • Her soruyu dikkatle okuyun
  • Her soru için en iyi cevabı seçin
  • Quiz'i istediğiniz kadar tekrar alabilirsiniz
  • İlerlemeniz üstte gösterilecek