JavaScript-da o'z istisno turlarini yaratish
JavaScript-da o'rnatilgan istisnolar soni juda ko'p emas va ular ko'pincha bizning turli xil istisno turlariga bo'lgan ehtiyojlarimizni qondira olmaydi. Shuning uchun JavaScript-da o'z turi bilan istisnolar yaratish imkoniyati mavjud.
Buning turli usullari mavjud. Eng oddiy usul -
throw ga name va message
kalitlari bo'lgan obyektni uzatish:
try {
throw {name: 'MyError', message: 'istisno matni'};
} catch (error) {
console.log(error.name); // 'MyError'
console.log(error.message); // 'istisno matni'
}
Ilgari biz nolga bo'lishda istisno chiqaradigan funktsiyani yaratgan edik:
function div(a, b) {
if (b !== 0) {
return a / b;
} else {
throw new Error('nolga bo‘lish xatosi');
}
}
Ushbu funktsiyani qayta ishlang, shunda u
biz tomonidan ixtiro qilingan turdagi, masalan,
DivisionByZeroError kabi, istisno chiqarsin.
Ilgari siz manfiy sondan ildiz chiqarishga urinishda istisno chiqaradigan funktsiyani yaratgan edingiz. Funktsiyangizni qayta ishlang, shunda u siz tomonidan ixtiro qilingan turdagi istisno chiqarsin. Istisno nomi muvofiq bo'lishi uchun uning nomi ustida yaxshi o'ylab ko'ring.