⊗jsPmFNClb 255 of 505 menu

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.

Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet