JavaScript Arrow Fonksiyon Kullanımı
Fonksiyon ifadeleri için genellikle function ifadelerinden daha iyi olan başka bir çok basit ve kısa sözdizimi vardır.
Buna “arrow fonksiyon” denir, ve kullanımı şöyle görünür:
1 2 3 |
let fonk = (arg1, arg2, ...argN) => ifade |
Bu, arg1..argN argümanlarını kabul eden, ardından sağ taraftaki ifadeyi kullanımlarıyla değerlendiren ve sonucunu döndüren bir fonk adında bir fonksiyon oluşturur.
Başka bir deyişle, aşağıdakilerin en kısa sürümüdür:
1 2 3 4 5 |
let fonk= function(arg1, arg2, ...argN) { return ifade; }; |
Somut bir örnek görelim:
1 2 3 4 5 6 7 8 9 10 11 12 |
let toplam = (a, b) => a + b; /* Yukarıdaki arrow fonksiyonunun uzun şekli şöyledir. let toplam = function(a, b) { return a + b; }; */ alert( toplam(1, 2) ); // 3 |
Görebildiğiniz gibi, (a, b) => a + b, a ve b adındaki iki argümanı kabul eden bir fonksiyon anlamına gelir. Uygulama üzerine, a + b ifadesini değerlendirir ve sonucu döndürür.
Tek bir argümanımız varsa, parametrelerin etrafındaki parantezler atlanabilir ve bu da daha da kısalır.
Örneğin:
1 2 3 4 5 6 |
let kare = n => n * n; // let kare = function(n) { return n * n } alert( kare(3) ); // 9 |
Eğer argüman yoksa, parantezler boş olacaktır (fakat mevcut olmalıdırlar):
1 2 3 4 5 |
let selamla = () => alert("Merhaba!"); selamla(); |
Arrow fonksiyon, fonksiyon ifadeleri ile aynı şekilde kullanılabilir.
Örneğin, dinamik olarak bir işlev oluşturmak için:
1 2 3 4 5 6 7 |
let yas = prompt("Kaç Yaşındasın?", 18); let mesaj = (yas < 18) ? () => alert('Yaşınız 18den küçük') : () => alert("Yaşın 18 yada üzerinde"); mesaj(); |
Ok(arrow) fonksiyonu ilk bakışta çok yabancı görünebilir ve ilk izlenim olarak çok okunabilir görünmeyebilir, ancak gözleriniz alıştığında vazgeçilmez olacaktır.
Yorum Yap