Какие знаешь типы ошибок в JavaScript

«Какие знаешь типы ошибок в JavaScript» — вопрос из категории JavaScript, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В JavaScript ошибки делятся на несколько типов:

  1. SyntaxError - ошибка синтаксиса:
const a = ; // Uncaught SyntaxError: Unexpected token ';'
  1. ReferenceError - обращение к несуществующей переменной:
console.log(b); // Uncaught ReferenceError: b is not defined
  1. TypeError - неверный тип данных или операции:
null.foo(); // Uncaught TypeError: Cannot read property 'foo' of null
  1. RangeError - выход за допустимый диапазон:
new Array(-1); // Uncaught RangeError: Invalid array length
  1. URIError - ошибка в URI-функциях:
decodeURI('%'); // Uncaught URIError: URI malformed
  1. EvalError (редко) - ошибка в eval().

  2. Custom Errors - пользовательские ошибки через class MyError extends Error.

Все ошибки наследуются от базового объекта Error. Можно обрабатывать через try/catch и создавать свои типы ошибок.