Ошибки (Error)

Систаксис ошибки new Error([message, fileName, lineName) все аргументы не обязательные:

  • message - cообщение об ошибке
  • fileName - имя файла в котором возникла ошибка, по умолчанию это файл исполняющий код
  • lineName - номер строки, где возникла ошибка
Типы ошибок

ReferenceError - ошибка, возникающая при обращении к несуществующей переменной. Пример:

var a = nonValue; // nonValue не была объявлена в коде

SyntaxError - ошибка, возникающая при попытке интерпретировать синтаксически неправильный код. Пример:

'use strict';
{x:3, y:4}

TypeError - ошибка, возникающая когда значение имеет не ожидаемый тип (если операнд или аргумент, передаваемый в функцию , не совместим с типом, которая функция оживает). Пример:

null.f();

RangeError - ошибка, возникающая когда значение не входит в множество или выходит за диапазон допустимых значений. Может вознакать при создании массива с неправильной длинной через конструктор Array, или при передаче плохих значений в методы числа Number.isFixed(), Number.isPrecision(). Пример:

var arr = new Array(-1);
Методы вызова ошибки
throw new Error();
Создание своей ошибки

Легкий способ

function MyError(message){
    this.name = 'MyError';
    this.message = message || 'Сообщение по умолчанию';
    this.stack = (new Error()).stack; //чтобы получить стэк возникновения ошибки, мы создаем пустую ошибку, и берем её стэк
};

MyError.prototype = Object.create(Error.prototype);
MyError.prototype.constructor = MyError;

Материал взят из MDN - Error

results matching ""

    No results matching ""