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
Optional. Der Name der Datei, in der der Fehler erzeugt wurde.
lineNumber
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 besitzen muss, erbt SyntaxError 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
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 2017 Draft (ECMA-262)
Die Definition von 'SyntaxError' in dieser Spezifikation.
Entwurf  

Browserkompatibilität

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Ja) (Ja) (Ja) (Ja) (Ja)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Ja) (Ja) (Ja) (Ja) (Ja) (Ja)

Siehe auch

Schlagwörter des Dokuments und Mitwirkende

 Mitwirkende an dieser Seite: schlagi123, fscholz
 Zuletzt aktualisiert von: schlagi123,