Տարբեր տիպի բացառությունների նետում 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 բլոկում
արտածեք տարբեր հաղորդագրություններ սխալի մասին տարբեր տիպի
բացառությունների համար։