Vytváření vlastních typů výjimek v JavaScriptu

Počet vestavěných výjimek v JavaScriptu není tak velký a většinou nemohou uspokojit všechny naše potřeby pro různé typy výjimek. Proto JavaScript má vestavěnou možnost vytvářet výjimky s vlastním typem.

Existují různé způsoby, jak to udělat. Nejjednodušší je předat objekt s klíči name a message do throw:

javascripttry {
  throw {name: 'MyError', message: 'text výjimky'};
} catch (error) {
  console.log(error.name); // 'MyError'
  console.log(error.message); // 'text výjimky'
}
Задание 1

Dříve jsme vytvořili funkci, která vyhazuje výjimku při dělení nulou:

javascriptfunction div(a, b) {
  if (b !== 0) {
    return a / b;
  } else {
    throw new Error('chyba dělení nulou');
  }
}

Upravte tuto funkci tak, aby vyhazovala výjimku s nějakým vymyšleným typem, například DivisionByZeroError.

Задание 2

Dříve jste vytvořili funkci, která vyhazuje výjimku při pokusu o extrakci odmocniny ze záporného čísla. Upravte svou funkci tak, aby vyhazovala výjimku s vámi vymyšleným typem. Dobře promyslete název výjimky, aby byl výstižný.