Hataları Ele Alma
Coddy'nin Node.js Journey'sinin Node.js Temelleri bölümünün bir parçası. Ders 13 / 24.
Elle düzenlenen bir notes.json dosyası bozulabilir ve bu durumda JSON.parse hata fırlatır, Node da bir yığın izi yazdırır.
try, hata fırlatabilecek kodu çalıştırır. Hata fırlattığında catch hatayı alır ve programın ne söyleyeceğine sen karar verirsin. err.message tek satırlık nedendir.
let config;
try {
config = JSON.parse('{ port: 3000 }');
} catch (err) {
console.error(`config is broken: ${err.message}`);
process.exit(1);
}Hatayı yakalayıp boş bir listeyle devam etme: sonraki add bozuk dosyanın üzerine kaydeder ve dosyadaki tüm notlar kaybolur.
Görev
Kolaynotes.jsongeçerli JSON olmadığında, her komut standart hata akışınanotes.json is damaged: <message>yazdırır ve1ile çıkar.- Başlangıçtaki
notes.jsondosyası bilerek bozuktur.
Değişikliğinizden önce ve sonra node notes.js list komutunu çalıştırın. Ardından notes.json dosyasındaki fazla virgülü silin ve list komutunu tekrar çalıştırın.
Kendin dene
import { existsSync, readFileSync, writeFileSync } from 'node:fs';
const file = 'notes.json';
const store = {
notes: existsSync(file) ? JSON.parse(readFileSync(file, 'utf8')) : [],
save() {
writeFileSync(file, JSON.stringify(this.notes, null, 2));
},
add(text) {
this.notes.push(text);
this.save();
return this.notes.length;
},
remove(n) {
const [text] = this.notes.splice(n - 1, 1);
this.save();
return text;
},
};
export default store;
Node.js Temelleri bölümündeki tüm dersler
1JavaScript'ı Node Üzerinde Çalıştırma
Merhaba, NodeKomut Satırı ArgümanlarıKomutlar