error.toString
error.toString
toString()
方法返回一个指定的错误对象(Error object)的字符串表示。
语法
e.toString()
返回值
代表指定Error
对象的字符串。
描述
Error
对象覆盖了 Object.prototype.toString()
方法。该方法实现如下:(假定 Object
和 String
没有被更改):
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;
};
示例
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'
规范
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 | |
浏览器兼容性
Feature | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic Support | (Yes) | (Yes) | (Yes) | 6 | (Yes) | (Yes) |
Feature | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
Basic Support | (Yes) | (Yes) | (Yes) | (Yes) | 8.1 | (Yes) | (Yes) |