# Выбрасывание своих типов исключений в JavaScript

Количество встроенных в JavaScript исключений не такое большое и они чаще всего не могут удовлетворить все наши потребности в разных типах исключений. Поэтому в JavaScript встроена возможность создавать исключения со своим типом.

Существуют разные способы сделать это. Самый простой - в `throw` передать объект с ключами `name` и `message`:

`try { throw {name: 'MyError', message: 'текст исключения'}; } catch (error) { console.log(error.name); // 'MyError' console.log(error.message); // 'текст исключения' }`

Ранее мы сделали функцию, выбрасывающую исключение при делении на ноль:

`function div(a, b) { if (b !== 0) { return a / b; } else { throw new Error('ошибка деления на ноль'); } }`

Переделайте эту функцию так, чтобы она выбрасывала исключение с каким-нибудь придуманными нами типом, например, `DivisionByZeroError`.

Ранее вы делали функцию, выбрасывающую исключение при попытке извлечь корень из отрицательного числа. Переделайте вашу функцию так, чтобы она выбрасывала исключение с придуманным вами типом. Хорошо подумайте над названием исключения, чтобы это название было удачным.

← →
↑
en ru