CodeBlanks Logo Icon CodeBlanks

Özet - Callback'ler

JavaScript kursu · Orta seviye · Ders 71/134

Hata-önce callback kullanarak bir dosya okuma simülasyonu yazarsın.

Özet - Callback'ler

Bu grupta callback'lerin temelini öğrendin. Bir callback, başka bir fonksiyona parametre olarak geçirdiğin fonksiyondur. Asenkron callback'ler event loop tarafından sonradan çağrılır. Node.js'te error-first gelenek, ilk parametrenin hata olmasıdır. İç içe callback'ler callback hell'i doğurur; isimli fonksiyonlara bölerek bunu çözersin.

Şimdi öğrendiklerini bir araya getiren iki görev yazacaksın: error-first callback kullanan bir dosya okuma simülasyonu ve isimli fonksiyonlara bölünmüş sıralı zamanlayıcılar.

Uygulama readFile simülasyonu yaz

readFile adında bir fonksiyon tanımla. İki parametre alsın: filename ve callback. Fonksiyon içinde setTimeout ile 100 ms sonra bir hata kontrolü yap. filename 'missing.txt' ise callback'i new Error(...) ile çağır. Değilse callback'i null ve bir içerik dizesiyle çağır.

Örnek çözümü göster
function readFile(filename, callback) {
  setTimeout(() => {
    if (filename === 'missing.txt') {
      callback(new Error('Dosya yok'));
    } else {
      callback(null, 'Dosya içeriği');
    }
  }, 100);
}

Uygulama İsimli fonksiyonlarla sıralı akış

İki isimli fonksiyon tanımla: loadData ve showData. loadData bir callback parametresi alsın ve setTimeout ile 100 ms sonra callback'i bir veri dizesiyle çağırsın. showData bir data parametresi alsın ve console.log ile yazdırsın. Son olarak loadData(showData) çağrısını yap.

Örnek çözümü göster
function loadData(callback) {
  setTimeout(() => {
    callback('Veri yüklendi');
  }, 100);
}
function showData(data) {
  console.log(data);
}
loadData(showData);

Kendini test et

  1. Error-first callback'te hata yoksa ilk parametre ne olur?

    • undefined
    • null
    • false
    • Boş dize
    Cevabı göster

    null — Doğru! Hata yoksa ilk parametre null olur; sonuç ikinci parametrededir.

  2. Kavramları eşleştir

    callback
    Geri çağrılan fonksiyon
    event loop
    Async callback'i çalıştırır
    err parametresi
    İlk argüman
    isimli fonksiyon
    Callback hell çözümü

Orta seviye bölümündeki tüm dersler