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 July 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 Language Specification # sec-error.prototype.tostring |
Совместимость с браузерами
BCD tables only load in the browser