JavaScript'те ар кандай кырсыктарды ыргытуу

Өзүбүздүн кырсыгыбызды ыргытып көрөлү да, бул учурда ката объектиси кандай жүрүм-турум танышына көз салалы:

javascripttry {
  throw new Error('кырсыктын тексти');
} catch (error) {
  console.log(error.name); // 'Error'
  console.log(error.message); // 'кырсыктын тексти'
}

Көрүп тургандарыңыздай, биздин кырсыгыбыздын түрү - 'Error'. Ошо сыяктуу жол менен ыргытылган каалаган кырсыктын да түрү ушул болот. Бирок бул ар дайым ыңгайлуу болбойт, анткени бизде бир нече кырсык болсо, аларды бири-биринен айырмалоого мүмкүнчүлүк болбойт.

JavaScript'те бул маселе чечилген: ыргытыла турган кырсыктар Error тиби гана эмес, ошондой эле JavaScript'тин курамына кирген каалаган ката тиби, мисалы, TypeError, SyntaxError, RangeError болушу мүмкүн.

Мисал үчүн, SyntaxError тибиндеги кырсыкты ыргыталы:

javascripttry {
  throw new SyntaxError('кырсыктын тексти');
} catch (error) {
  console.log(error.name); // 'SyntaxError'
  console.log(error.message); // 'кырсыктын тексти'
}
Задание 1

TypeError тибиндеги кырсыкты ыргытыңыз.

Задание 2

SyntaxError жана RangeError тибиндеги кырсыктарды ыргытыңыз. Бул кырсыктарды бир try блогу менен кармаңыз. catch блогундо ар түрдүү типтеги кырсыктар үчүн ар түрдүү ката жөнүндө билдирүүлөрдү чыгарыңыз.