Wyrzucanie własnych typów wyjątków w JavaScript

Liczba wbudowanych wyjątków w JavaScript nie jest tak duża i najczęściej nie mogą one zaspokoić wszystkich naszych potrzeb dotyczących różnych typów wyjątków. Dlatego w JavaScript wbudowano możliwość tworzenia wyjątków z własnym typem.

Istnieją różne sposoby, aby to zrobić. Najprostszy - przekazać do throw obiekt z kluczami name i message:

javascripttry {
  throw {name: 'MyError', message: 'tekst wyjątku'};
} catch (error) {
  console.log(error.name); // 'MyError'
  console.log(error.message); // 'tekst wyjątku'
}
Задание 1

Wcześniej zrobiliśmy funkcję, która wyrzuca wyjątek przy dzieleniu przez zero:

javascriptfunction div(a, b) {
  if (b !== 0) {
    return a / b;
  } else {
    throw new Error('błąd dzielenia przez zero');
  }
}

Przerób tę funkcję tak, aby wyrzucała wyjątek z wymyślonym przez nas typem, na przykład DivisionByZeroError.

Задание 2

Wcześniej robiłeś funkcję, która wyrzuca wyjątek przy próbie pierwiastkowania liczby ujemnej. Przerób swoją funkcję tak, aby wyrzucała wyjątek z wymyślonym przez Ciebie typem. Dobrze przemyśl nazwę wyjątku, aby była trafna.