Funkcje zwrotne
Część sekcji Podstawy Node.js ścieżki Node.js w Coddy. Lekcja 14 z 24.
Odczytanie dużego pliku zajmuje czas, a program, który czeka na jego wczytanie, w tym czasie nic innego nie robi.
fs.readFile(path, 'utf8', callback) rozpoczyna odczyt i od razu zwraca sterowanie. Gdy plik zostanie wczytany, Node wywoła twój callback z argumentem (err, text). err ma wartość null w przypadku powodzenia, a w przeciwnym razie zawiera błąd, więc najpierw go sprawdź. Wszystko, co wymaga tekstu, umieść wewnątrz callbacka.
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 wyświetli się jako pierwsze: wiersz po readFile wykonuje się, gdy plik jest jeszcze wczytywany.
Wyzwanie
Łatwycount.jswypisujeReading..., następnie<n> notesz wnętrza funkcji zwrotnej, a potemDone, również z funkcji zwrotnej.- Gdy nie można odczytać pliku, zamiast liczby wypisuje
Cannot read <file>.
Uruchom node count.js, a następnie node count.js nothere.json.
Spróbuj swoich sił
import fs from 'node:fs';
const file = process.argv[2] ?? 'notes.json';
console.log('Reading...');
// Odczytaj plik za pomocą fs.readFile i funkcji zwrotnej.
// Wypisz liczbę notatek, a następnie Done.
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy Node.js
1Uruchamianie JavaScript w Node
Witaj, NodeArgumenty wiersza poleceńPolecenia