⊗jsSpExcThrT 146 of 294 menu

Különböző típusú kivételek dobása JavaScriptben

Dobjunk saját kivételt és nézzük meg, hogyan viselkedik a hibaobjektum ebben az esetben:

try { throw new Error('kivétel szövege'); } catch (error) { console.log(error.name); // 'Error' console.log(error.message); // 'kivétel szövege' }

Amint látod, a kivételünk típusa - 'Error'. Ugyanilyen típusúak lesznek az összes hasonló módon dobott kivétel. Ez azonban nem mindig lesz kényelmes, mert ha több kivételünk is lehet, nem fogjuk tudni megkülönböztetni őket egymástól.

A JavaScriptben van megoldás erre a problémára: nem csak Error típusú kivételeket lehet dobni, hanem bármely beépített JavaScript hibatípust, például TypeError, SyntaxError, RangeError.

Dobjunk példaként egy SyntaxError típusú kivételt:

try { throw new SyntaxError('kivétel szövege'); } catch (error) { console.log(error.name); // 'SyntaxError' console.log(error.message); // 'kivétel szövege' }

Dobj egy TypeError típusú kivételt.

Dobj SyntaxError és RangeError típusú kivételeket. Kapd el ezeket a kivételeket egyetlen try blokk segítségével. A catch blokkban jeleníts meg különböző hibaüzeneteket a különböző típusú kivételekhez.

kkhunlruhy