Menu
CoddyTech

Geri Çağırımlar

Coddy'nin Node.js Journey'sinin Node.js Temelleri bölümünün bir parçası. Ders 14 / 24.

Büyük bir dosyayı okumak zaman alır ve onu bekleyen bir program bu sırada başka hiçbir şey yapmaz.

fs.readFile(path, 'utf8', callback) okumayı başlatır ve hemen geri döner. Dosya yüklendiğinde Node, (err, text) ile geri çağırma işlevini çağırır. İşlem başarılı olduğunda err değeri null, aksi hâlde bir hata olur; bu yüzden önce bunu kontrol et. Metne ihtiyaç duyan her şey geri çağırma işlevinin içinde olmalı.

import fs from 'node:fs';

fs.readFile('poem.txt', 'utf8', (err, text) => {
    if (err) {
        console.log('No poem today');
        return;
    }
    console.log(text.split('\n').length + ' lines');
});
console.log('Asked for the poem');

Asked for the poem önce yazdırılır: readFile sonrasındaki satır, dosya hâlâ yüklenirken çalışır.

challenge icon

Görev

Kolay
  • count.js, Reading... yazdırır; ardından geri çağırımın içinden <n> notes, yine geri çağırımın içinden de Done yazdırır.
  • Dosya okunamadığında sayı yerine Cannot read <file> yazdırır.

Önce node count.js, ardından node count.js nothere.json komutunu çalıştır.

Kendin dene

import fs from 'node:fs';

const file = process.argv[2] ?? 'notes.json';

console.log('Reading...');
// Dosyayı fs.readFile ve bir geri çağırma işleviyle oku.
// Notların sayısını, ardından Done. yazdır.
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Node.js Temelleri bölümündeki tüm dersler