Özet - Hata yönetimi
- Node.js kursu
- Orta seviye
- Ders 81/116
- 5 dk
Error, try/catch ve custom error'ı birleştirerek bir hata sınıfı hiyerarşisi yazarsın.
Özet - Hata yönetimi
Bu grupta hata yönetiminin temel araçlarını öğrendin: Error sınıfı, try/catch ile yakalama, özel error sınıfları, Express error middleware ve unhandledRejection olayı.
Bu beş aracı birleştirerek sağlam bir hata yönetim sistemi kurabilirsin. Örneğin bir özel error sınıfı tanımlayıp onu try/catch ile yakalayabilirsin. Bu, Node.js uygulamalarında hataların kontrollü biçimde ele alınmasının temel kalıbıdır. Şimdi tüm parçaları tek bir kodda birleştireceksin.
Uygulama AppError sınıfını yaz ve yakala
AppError sınıfını tanımla; extends Error. constructor(message) içinde super(message) ve this.name = "AppError" ayarla. try'da throw new AppError("test"), catch (e)'de console.log(e.name) yaz.
Başlangıç kodu
// AppError sınıfını tanımla (extends Error)
// constructor'da super ve this.name ayarla
// try'da fırlat, catch'te name'i yazdır
// buraya yazÖrnek çözüm
class AppError extends Error {
constructor(message) {
super(message);
this.name = "AppError";
}
}
try {
throw new AppError("test");
} catch (e) {
console.log(e.name);
}Beklenen çıktı
AppError
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Aracı rolüne eşle
| Kavram | Anlamı |
|---|---|
Error |
Temel hata sınıfı |
try/catch |
Hatayı yakalar |
extends |
Türetme yapar |
error middleware |
Express hata işleyici |
2 try/catch ile yakalanan hata hangi değişkene konur?
catch (e)- catch(e) içindeki e Doğru cevap
- throw içindeki ad
- global hata
- process.err
Açıklama: catch(e) içindeki e, fırlatılan hatayı tutar.
3 super çağrısını tamamla
constructor(message) { ____(message); this.name = "AppError"; }
constructor(message) { super(message); this.name = "AppError"; }
Açıklama: super(message) üst sınıfın kurucusunu çağırır.