The toString()
method returns a string representing the specified Error
object.
Syntax
e.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
var e = new Error('fatal error'); console.log(e.toString()); // 'Error: fatal error' e.name = undefined; console.log(e.toString()); // 'Error: fatal error' e.name = ''; console.log(e.toString()); // 'fatal error' e.message = undefined; console.log(e.toString()); // 'Error' e.name = 'hello'; console.log(e.toString()); // 'hello'
Specifications
Specification | Status | Comment |
---|---|---|
ECMAScript 1st Edition (ECMA-262) | Standard | Initial definition. Implemented in JavaScript 1.1. |
ECMAScript 5.1 (ECMA-262) The definition of 'Error.prototype.toString' in that specification. |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'Error.prototype.toString' in that specification. |
Standard | |
ECMAScript Latest Draft (ECMA-262) The definition of 'Error.prototype.toString' in that specification. |
Living Standard |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Feature | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | Yes | Yes | Yes | 6 | Yes | Yes |
Feature | Android webview | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
Basic support | Yes | Yes | Yes | Yes | 8.1 | Yes | Yes |
See also
Document Tags and Contributors
Tags:
Contributors to this page:
fscholz,
jameshkramer,
eduardoboucas,
Mingun,
Waldo,
getify,
Sheppy,
ethertank,
evilpie,
Sevenspade
Last updated by:
fscholz,