JavaScript-də öz istisna növlərimizin yaradılması
JavaScript-də daxili istisnaların sayı çox böyük deyil və onlar çox vaxt müxtəlif istisna növləri ilə bağlı bütün ehtiyaclarımızı ödəyə bilmir. Buna görə də JavaScript-də öz növü ilə istisnalar yaratmaq imkanı daxil edilib.
Bunu etməyin müxtəlif yolları var. Ən
sadəsi - throw-a name və message
açarları olan bir obyekt ötürməkdir:
try {
throw {name: 'MyError', message: 'istisna mətni'};
} catch (error) {
console.log(error.name); // 'MyError'
console.log(error.message); // 'istisna mətni'
}
Əvvəllər biz sıfıra bölmə zamanı istisna atan bir funksiya etmişdik:
function div(a, b) {
if (b !== 0) {
return a / b;
} else {
throw new Error('sıfıra bölmə xətası');
}
}
Bu funksiyanı elə dəyişin ki, o, bizim tərəfimizdən
uydurulmuş hər hansı bir növ ilə istisna atsın,
məsələn, DivisionByZeroError.
Əvvəllər siz mənfi ədəddən kök çıxarmaq cəhdi zamanı istisna atan bir funksiya etmişdiniz. Funksiyanızı elə dəyişin ki, o, sizin tərəfinizdən uydurulmuş növ ilə istisna atsın. İstisnanın adı üzərində yaxşı düşünün ki, bu ad uğurlu olsun.