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:

javascripttry {
  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:

javascripttry {
  throw new SyntaxError('kivétel szövege');
} catch (error) {
  console.log(error.name); // 'SyntaxError'
  console.log(error.message); // 'kivétel szövege'
}
Задание 1

Dobj egy TypeError típusú kivételt.

Задание 2

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.