This page was translated from English by the community. Learn more and join the MDN Web Docs community.

View in English Always switch to English

Error.prototype.toString()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨июль 2015 г.⁩.

Сводка

Метод toString() возвращает строку, представляющую указанный объект Error.

Синтаксис

e.toString()

Описание

Объект Error переопределяет метод Object.prototype.toString(), унаследованный всеми объектами. Его семантика следующая (предполагается, что объекты Object и String имеют свои изначальные значения):

js
Error.prototype.toString = function () {
  "use strict";

  var obj = Object(this);
  if (obj !== this) {
    throw new TypeError();
  }

  var name = this.name;
  name = name === undefined ? "Error" : String(name);

  var msg = this.message;
  msg = msg === undefined ? "" : String(msg);

  if (name === "") {
    return msg;
  }
  if (msg === "") {
    return name;
  }

  return name + ": " + msg;
};

Примеры

js
var e = new Error("непоправимая ошибка");
print(e.toString()); // 'Error: непоправимая ошибка'

e.name = undefined;
print(e.toString()); // 'Error: непоправимая ошибка'

e.name = "";
print(e.toString()); // 'непоправимая ошибка'

e.message = undefined;
print(e.toString()); // 'Error'

e.name = "привет";
print(e.toString()); // 'привет'

Спецификации

Specification
ECMAScript® 2026 Language Specification
# sec-error.prototype.tostring

Совместимость с браузерами

Смотрите также