JavaScript'те ар кандай кырсыктарды ыргытуу
Өзүбүздүн кырсыгыбызды ыргытып көрөлү да, бул учурда ката объектиси кандай жүрүм-турум танышына көз салалы:
try {
throw new Error('кырсыктын тексти');
} catch (error) {
console.log(error.name); // 'Error'
console.log(error.message); // 'кырсыктын тексти'
}
Көрүп тургандарыңыздай, биздин кырсыгыбыздын түрү - 'Error'.
Ошо сыяктуу жол менен ыргытылган каалаган кырсыктын да түрү ушул болот.
Бирок бул ар дайым ыңгайлуу болбойт, анткени бизде бир нече кырсык болсо,
аларды бири-биринен айырмалоого мүмкүнчүлүк болбойт.
JavaScript'те бул маселе чечилген: ыргытыла турган кырсыктар
Error тиби гана эмес, ошондой эле JavaScript'тин курамына кирген
каалаган ката тиби, мисалы, TypeError,
SyntaxError, RangeError болушу мүмкүн.
Мисал үчүн, SyntaxError тибиндеги кырсыкты ыргыталы:
try {
throw new SyntaxError('кырсыктын тексти');
} catch (error) {
console.log(error.name); // 'SyntaxError'
console.log(error.message); // 'кырсыктын тексти'
}
TypeError тибиндеги кырсыкты ыргытыңыз.
SyntaxError жана RangeError тибиндеги кырсыктарды ыргытыңыз.
Бул кырсыктарды бир try блогу менен кармаңыз. catch блогундо
ар түрдүү типтеги кырсыктар үчүн ар түрдүү ката жөнүндө билдирүүлөрдү чыгарыңыз.