SyntaxError

El objeto SyntaxError representa un error cuando se trata de interpretar codigo sintacticamente invalido.

Descripci贸n

Un SyntaxError es lanzado cuando el motor de JavaScript se encuentra con partes de c贸digo que no forman parte de la sintaxtis del lenguaje al momento analizar el c贸digo.

Sintaxis

new SyntaxError([mensaje[, nombreArchivo[, numeroLinea]]])

Parametros

mensaje
Opcional. Descripci贸n legible del error.
nombreArchivo This API has not been standardized.
Opcional. El nombre del archivo que contiene el c贸digo que caus贸 la excepci贸n.
numeroLinea This API has not been standardized.
Opcional. El numero de linea del c贸digo que caus贸 la excepci贸n.

Propiedades

SyntaxError.prototype (en-US)
Permite el agregado de propiedades al objeto SyntaxError.

Metodos

El objeto global SyntaxError no contiene metodos propios, sin embargo, hereda algunos metodos debido a la cadena de prototipos.

Instancias de SyntaxError

Propiedades

SyntaxError.prototype.constructor
Especifica la funcion que cre贸 una instancia del prototipo.
SyntaxError.prototype.message
Mensaje de error. A pesar de que ECMA-262 especifica que SyntaxError debe proveer su propia propiedad message , en SpiderMonkey, es heredada de Error.prototype.message.
SyntaxError.prototype.name
Error name. Inherited from Error.
SyntaxError.prototype.fileName
Ruta al archivo que produjo el error. Heredada de Error.
SyntaxError.prototype.lineNumber
Numero de linea en el archivo que produjo el error. Heredada de Error.
SyntaxError.prototype.columnNumber (en-US)
Numero de columna en la linea que produjo el error. Heredada de Error.
SyntaxError.prototype.stack (en-US)
Stack trace. Heredada de Error.

Metodos

A pesar de que el objeto prototipo de SyntaxError no contiene metodos propios, las instancias de SyntaxError heredan algunos metodos debido a la cadena de prototipos.

Ejemplos

Capturando un SyntaxError

try {
  eval('hoo bar');
} catch (e) {
  console.log(e instanceof SyntaxError); // true
  console.log(e.message);                // "missing ; before statement"
  console.log(e.name);                   // "SyntaxError"
  console.log(e.fileName);               // "Scratchpad/1"
  console.log(e.lineNumber);             // 1
  console.log(e.columnNumber);           // 4
  console.log(e.stack);                  // "@Scratchpad/1:2:3\n"
}

Creando un SyntaxError

try {
  throw new SyntaxError('Hola', 'unArchivo.js', 10);
} catch (e) {
  console.log(e instanceof SyntaxError); // true
  console.log(e.message);                // "Hola"
  console.log(e.name);                   // "SyntaxError"
  console.log(e.fileName);               // "unArchivo.js"
  console.log(e.lineNumber);             // 10
  console.log(e.columnNumber);           // 0
  console.log(e.stack);                  // "@Scratchpad/2:11:9\n"
}

Especificaciones

Specification Status Comment
ECMAScript 3rd Edition (ECMA-262) Standard Initial definition.
ECMAScript 5.1 (ECMA-262)
La definici贸n de 'SyntaxError' en esta especificaci贸n.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
La definici贸n de 'SyntaxError' en esta especificaci贸n.
Standard  
ECMAScript (ECMA-262)
La definici贸n de 'SyntaxError' en esta especificaci贸n.
Living Standard  

Compatibilidad con Navegarores

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help! (en-US)
Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) (Yes) (Yes)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

V茅ase tambi茅n