Get to know MDN better
Esta página ha sido traducida del inglés por la comunidad. Aprende más y únete a la comunidad de MDN Web Docs.
This feature is well established and works across many devices and browser versions. It’s been available across browsers since julio de 2015.
* Some parts of this feature may have varying levels of support.
Los objetos Error se lanzan cuando ocurren errores en tiempo de ejecución. También puedes utilizar el objeto Error como objeto base para excepciones definidas por el usuario. Ve más adelante los tipos de errores estándar integrados.
Los errores en tiempo de ejecución dan como resultado la creación y lanzamiento de nuevos objetos Error.
Además del constructor genérico Error, hay otros siete constructores de errores en el núcleo de JavaScript. Para conocer las excepciones de lado del cliente, consulta Declaraciones para el manejo de excepciones.
EvalErrorCrea una instancia que representa un error que ocurre con respecto a la función global eval().
InternalErrorCrea una instancia que representa un error que ocurre cuando se produce un error interno en el motor de JavaScript. Por ejemplo: "demasiada recursividad".
RangeErrorCrea una instancia que representa un error que ocurre cuando una variable numérica o parámetro está fuera de su rango válido.
ReferenceErrorCrea una instancia que representa un error que ocurre cuando se quita la referencia a una referencia no válida.
SyntaxErrorCrea una instancia que representa un error de sintaxis.
TypeErrorCrea una instancia que representa un error que ocurre cuando una variable o parámetro no es de un tipo válido.
URIErrorCrea una instancia que representa un error que ocurre cuando encodeURI() o decodeURI() pasan parámetros no válidos.
Crea un nuevo objeto Error.
Una función V8 no estándar que crea la propiedad stack en una instancia de Error.
Mensaje de error.
Error.prototype.nameNombre del error.
Error.prototype.descriptionUna propiedad no estándar de Microsoft para la descripción del error. Similar a message.
Error.prototype.numberUna propiedad no estándar de Microsoft para un número de error.
Error.prototype.fileNameUna propiedad no estándar de Mozilla para la ruta al archivo que generó este error.
Error.prototype.lineNumberUna propiedad no estándar de Mozilla para el número de línea en el archivo que generó este error.
Error.prototype.columnNumberUna propiedad no estándar de Mozilla para el número de columna en la línea que generó este error.
Error.prototype.stackUna propiedad no estándar de Mozilla para un seguimiento de la pila.
Devuelve una cadena que representa el objeto especificado. Redefine el método Object.prototype.toString().
Normalmente, creas un objeto Error con la intención de generarlo utilizando la palabra clave throw. Puedes manejar el error usando la construcción try...catch:
Puede elegir manejar solo tipos de error específicos probando el tipo de error con la propiedad constructor del error o, si estás escribiendo para motores JavaScript modernos, la palabra clave instanceof:
Posiblemente desees definir tus propios tipos de error derivados de Error para poder lanzarlo con throw new MyError() y usar instanceof MyError para verificar el tipo de error en el controlador de excepciones. Esto da como resultado un código de manejo de errores más limpio y consistente.
Consulta "¿Cuál es una buena manera de extender Error en JavaScript?" en StackOverflow para una discusión en profundidad.
Advertencia: Las versiones de Babel anteriores a la 7 pueden manejar métodos de clase CustomError, pero solo cuando se declaran con Object.defineProperty(). De lo contrario, las versiones antiguas de Babel y otros transpiladores no manejarán correctamente el siguiente código sin configuración adicional.
Nota: Algunos navegadores incluyen el constructor CustomError en el seguimiento de la pila cuando se utilizan clases de ES2015.
Advertencia: Todos los navegadores incluyen el constructor CustomError en el seguimiento de la pila cuando se usa una declaración de prototipo.
| ECMAScript® 2027 Language Specification # sec-error-objects |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 21 jul 2025 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.