SyntaxError

Das SyntaxError Objekt repräsentiert einen Fehler, der auftritt, wenn versucht wird syntaktisch falschen Quelltext zu interpretieren.

Beschreibung

Ein SyntaxError wird erzeugt, wenn die JavaScript-Umgebung Quelltextstücke  entdeckt, die nicht der Syntax der Sprachdefinition von JavaScript entspricht.

Syntax

new SyntaxError([message[, fileName[, lineNumber]]])

Parameter

message
Optional. Für Menschen lesbare Beschreibung des Fehlers.
fileName This API has not been standardized.
Optional. Der Name der Datei, in der der Fehler erzeugt wurde.
lineNumber This API has not been standardized.
Optional. Die Zeilennummer, in der der Fehler erzeugt wurde.

Eigenschaften

SyntaxError.prototype
Erlaubt es Eigenschaften zu allen SyntaxError Objekten hinzuzufügen.

Methoden

Das globale SyntaxError-Objekt enthält keine eigenen Methoden. Jedoch erbt das Objekt einige Methoden durch die Prototypenkette.

SyntaxError Instanzen

Eigenschaften

SyntaxError.prototype.constructor
Spezifiziert die Funktion, die einen Instanz des Prototypen erstellt.
SyntaxError.prototype.message
Fehlermeldung. Obwohl ECMA-262 Spezifiziert, dass SyntaxError eine eigene message Eigenschaft haben sollte, erbt dieser in SpiderMonkey die Eigenschaft Error.prototype.message.
SyntaxError.prototype.name
Fehlername. Vererbt von Error.
SyntaxError.prototype.fileName
Pfad zur Datei, in der der Fehler erzeugt wurde. Vererbt von Error.
SyntaxError.prototype.lineNumber
Zeilennummer, in der der Fehler erzeugt wurde. Vererbt von Error.
SyntaxError.prototype.columnNumber
Spaltennummer, in der der Fehler erzeugt wurde. Vererbt von Error.
SyntaxError.prototype.stack This API has not been standardized.
Stack trace. Vererbt von Error.

Methoden

Obwohl das SyntaxError Prototypobjekt keine Methoden enthält, haben SyntaxError Instanzen einige Vererbte Methoden durch die Prototypenkette.

Beispiele

Auffangen eines 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"
}

Erzeugen eines SyntaxError

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

Spezifikationen

Spezifikation Status Kommentar
ECMAScript 3rd Edition (ECMA-262) Standard Initiale Definition.
ECMAScript 5.1 (ECMA-262)
Die Definition von 'SyntaxError' in dieser Spezifikation.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
Die Definition von 'SyntaxError' in dieser Spezifikation.
Standard  
ECMAScript (ECMA-262)
Die Definition von 'SyntaxError' in dieser Spezifikation.
Lebender Standard  

Browserkompatibilität

BCD tables only load in the browser

Siehe auch