SyntaxError

Obiekt SyntaxError reprezentuje błąd przy próbie interpretacji kodu niepoprawnego pod względem składni. Jest wyrzucany wtedy, gdy silnik JavaScript podczas interpretacji kodu napotyka znak lub ciąg znaków niezgodny ze składnią języka.

Konstruktor

SyntaxError()
Tworzy nowy obiekt SyntaxError.

Właściwości instancji

SyntaxError.prototype.message
Wiadomość błędu. Chociaż ECMA-262 mówi, że SyntaxError powinien dostarczać własną właściwość message, w SpiderMonkey jest ona dziedziczona z Error.prototype.message.
SyntaxError.prototype.name
Nazwa błędu. Odziedziczone z Error.
SyntaxError.prototype.fileName
Ścieżka do pliku zawierającego błąd. Odziedziczone z Error.
SyntaxError.prototype.lineNumber
Numer zawierającej błąd linii w pliku. Odziedziczone z Error.
SyntaxError.prototype.columnNumber
Numer zawierającej błąd kolumny w linii kodu. Odziedziczone z Error.
SyntaxError.prototype.stack
Stos wywołań. Odziedziczone z Error.

Przykłady

Obsługa SyntaxError

try {
  eval('hoo bar');
} catch (e) {
  console.error(e instanceof SyntaxError); 
  console.error(e.message);                
  console.error(e.name);                   
  console.error(e.fileName);               
  console.error(e.lineNumber);             
  console.error(e.columnNumber);           
  console.error(e.stack);                  
}

Tworzenie SyntaxError

try {
  throw new SyntaxError('Hej', 'jakisPlik.js', 10);
} catch (e) {
  console.error(e instanceof SyntaxError); // true
  console.error(e.message);                // Hej
  console.error(e.name);                   // SyntaxError
  console.error(e.fileName);               // jakisPlik.js
  console.error(e.lineNumber);             // 10
  console.error(e.columnNumber);           // 0
  console.error(e.stack);                  // @debugger eval code:3:9
}

Specyfikacje

Specyfikacja
ECMAScript (ECMA-262)
The definition of 'SyntaxError' in that specification.

Wsparcie przeglądarek

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
SyntaxErrorChrome Full support 1Edge Full support 12Firefox Full support 1IE Full support 5.5Opera Full support 5Safari Full support 1WebView Android Full support 1Chrome Android Full support 18Firefox Android Full support 4Opera Android Full support 10.1Safari iOS Full support 1Samsung Internet Android Full support 1.0nodejs Full support 0.1.100
SyntaxError() constructorChrome Full support 1Edge Full support 12Firefox Full support 1IE Full support 5.5Opera Full support 5Safari Full support 1WebView Android Full support 1Chrome Android Full support 18Firefox Android Full support 4Opera Android Full support 10.1Safari iOS Full support 1Samsung Internet Android Full support 1.0nodejs Full support 0.1.100

Legend

Full support  
Full support

Zobacz też