12 lines
1.5 KiB
Markdown
12 lines
1.5 KiB
Markdown
---
|
||
sidebar_position: 2
|
||
---
|
||
|
||
# Пользовательские ошибки, расширение Error
|
||
Источник: [https://learn.javascript.ru/custom-errors](https://learn.javascript.ru/custom-errors)
|
||
|
||
- Мы можем наследовать свои классы ошибок от `Error` и других встроенных классов ошибок, но нужно позаботиться о свойстве name и не забыть вызвать `super`.
|
||
- Мы можем использовать `instanceof` для проверки типа ошибок. Это также работает с наследованием. Но иногда у нас объект ошибки, возникшей в сторонней библиотеке, и нет простого способа получить класс. Тогда для проверки типа ошибки можно использовать свойство `name`.
|
||
- Обёртывание исключений является распространённой техникой: функция ловит низкоуровневые исключения и создаёт одно «высокоуровневое» исключение вместо разных низкоуровневых. Иногда низкоуровневые исключения становятся свойствами этого объекта, как `err.cause` в примерах выше, но это не обязательно.
|
||
|