Error.prototype.toString()
The toString()
method returns a string representing the
specified Error
object.
Syntax
toString()
Return value
A string representing the specified Error
object.
Description
The Error
object overrides the Object.prototype.toString()
method inherited by all objects. Its semantics are as follows (assuming
Object
and String
have their original values):
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;
};
Examples
Using toString()
var e1 = new Error('fatal error');
console.log(e1.toString()); // 'Error: fatal error'
var e2 = new Error('fatal error');
e2.name = undefined;
console.log(e2.toString()); // 'Error: fatal error'
var e3 = new Error('fatal error');
e3.name = '';
console.log(e3.toString()); // 'fatal error'
var e4 = new Error('fatal error');
e4.name = '';
e4.message = undefined;
console.log(e4.toString()); // ''
var e5 = new Error('fatal error');
e5.name = 'hello';
e5.message = undefined;
console.log(e5.toString()); // 'hello'
Specifications
Specification |
---|
ECMAScript Language Specification # sec-error.prototype.tostring |
Browser compatibility
BCD tables only load in the browser
See also
- A polyfill of
Error.prototype.toString
with many bug fixes is available incore-js
Error.prototype.toSource()