JavaScript'те өзүңүздүн кемчиликтерди ыргытуу типтериңиз
JavaScript'ке чыгарылган кемчиликтердин саны абдан көп эмес жана алар көбүнчө ар кандай кемчилик түрлөрүндөгү бардык муктаждыктарыбызды канааттандыра албайт. Ошондуктан JavaScript'ке өзүңүздүн тиби менен кемчиликтерди түзүү мүмкүнчүлүгү киргизилген.
Муну жасоонун ар кандай жолдору бар. Эң
жөнөкөйү - throw аркылуу объектти
берүү
name жана message ачкычтары менен:
try {
throw {name: 'MyError', message: 'кемчиликтин тексти'};
} catch (error) {
console.log(error.name); // 'MyError'
console.log(error.message); // 'кемчиликтин тексти'
}
Мурда биз нөлгө бөлгөндө кемчилик ыргытуучу функцияны жасаганбыз:
function div(a, b) {
if (b !== 0) {
return a / b;
} else {
throw new Error('нөлгө бөлүү катасы');
}
}
Бул функцияны кайра иштеп чыгыңыз, анда ал биздин ойлоп тапкан
кандайдыр бир тип менен кемчилик ыргытат, мисалы, DivisionByZeroError.
Мурда сиз терс сандан тамыр чыгарууга аракет кылууда кемчилик ыргытуучу функцияны жасагансыз. Сиздин функцияңызды кайра иштеп чыгыңыз, анда ал сиз ойлоп тапкан тип менен кемчилик ыргытат. Кемчиликтин аталышына жакшы ойлонуп көрүңүз, ошондо бул аталыш ийгиликтүү болот.