JavaScript'te Geri Çağırım Fonksiyonları
Fonksiyonlar, başka fonksiyonlara parametre olarak iletilebilir. Bu tür fonksiyon parametrelerine geri çağırımlar (callback) denir. Hadi bir örnekle onlarla çalışmayı görelim.
Diyelim ki, ilk parametresi bir dizi, ikinci parametresi ise dizinin her bir elemanına uygulanacak bir geri çağırım alan bir fonksiyon yapmak istiyoruz:
function each(arr, callback) {
// buraya bir kod gelecek
}
Fonksiyonumuzun gerçekleştirimini yazalım:
function each(arr, callback) {
let result = [];
for (let elem of arr) {
result.push( callback(elem) ); // geri çağırım fonksiyonunu çağırıyoruz
}
return result;
}
each fonksiyonumuz evrenseldir.
Bu, ona farklı geri çağırımlar ileterek
diziler üzerinde farklı işlemler
yapabileceğimiz anlamına gelir. Bu sırada fonksiyonumuzun kodu
değişmeden kalacaktır - sadece
iletilen geri çağırımlar değişecektir.
Örnek olarak, fonksiyonumuzu kullanarak bir dizinin her elemanının karesini alalım. Bunun için parametre olarak ilgili geri çağırımı iletiyoruz:
let result = each([1, 2, 3, 4, 5], function(num) {
return num ** 2;
});
console.log(result);
Şimdi ise dizi elemanlarının küpünü alalım. Bunun için parametre olarak bu işlemi yapan başka bir geri çağırım iletiyoruz:
let result = each([1, 2, 3, 4, 5], function(num) {
return num ** 3;
});
console.log(result);
Sayılardan oluşan bir dizi verilsin.
Oluşturduğumuz each fonksiyonunu kullanarak her bir
elemanı iki katına çıkarın.
Stringlerden oluşan bir dizi verilsin.
Oluşturduğumuz each fonksiyonunu kullanarak her bir
stringin karakterlerini ters çevirin.
Stringlerden oluşan bir dizi verilsin.
Oluşturduğumuz each fonksiyonunu kullanarak her bir
stringin ilk karakterini büyük harf yapın.