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:

javascriptfunction each(arr, callback) {
  // buraya bir kod gelecek
}

Fonksiyonumuzun gerçekleştirimini yazalım:

javascriptfunction 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:

javascriptlet 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:

javascriptlet result = each([1, 2, 3, 4, 5], function(num) {
  return num ** 3;
});

console.log(result);
Задание 1

Sayılardan oluşan bir dizi verilsin. Oluşturduğumuz each fonksiyonunu kullanarak her bir elemanı iki katına çıkarın.

Задание 2

Stringlerden oluşan bir dizi verilsin. Oluşturduğumuz each fonksiyonunu kullanarak her bir stringin karakterlerini ters çevirin.

Задание 3

Stringlerden oluşan bir dizi verilsin. Oluşturduğumuz each fonksiyonunu kullanarak her bir stringin ilk karakterini büyük harf yapın.