Esta página ha sido traducida del inglés por la comunidad. Aprende más y únete a la comunidad de MDN Web Docs.

View in English Always switch to English

Error.prototype.toString()

Baseline
Ampliamente disponible

Esta característica está consolidada y funciona en muchos dispositivos y versiones de navegador. Está disponible en todos los navegadores desde julio de 2015.

El método toString() devuelve una cadena que representa el objeto Error especificado.

Sintaxis

e.toString()

Valor de retorno

Una cadena que representa el objeto Error especificado.

Descripción

El objeto Error redefine el método Object.prototype.toString() heredado por todos los objetos. Su semántica es la siguiente (asumiendo que Object y String tienen sus valores originales):

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;
};

Ejemplos

Usar toString()

js
var e = new Error("fatal error");
console.log(e.toString()); // 'Error: error fatal'

e.name = undefined;
console.log(e.toString()); // 'Error: error fatal'

e.name = "";
console.log(e.toString()); // 'error fatal'

e.message = undefined;
console.log(e.toString()); // ''

e.name = "hola";
console.log(e.toString()); // 'hola'

Especificaciones

Especificación
ECMAScript® 2027 Language Specification
# sec-error.prototype.tostring

Compatibilidad con navegadores

Ve también