L'objet SyntaxError
représente une erreur qui se produit lors de l'interprétation d'un code dont la syntaxe est invalide.
Description
Une exception SyntaxError
est levée lorsque le moteur JavaScript rencontre des entités lexicales invalide ou dans un ordre invalide par rapport à la grammaire du langage.
Syntaxe
new SyntaxError([message[, nomFichier[, numLigne]]])
Paramètres
message
Facultatif- Une description, lisible par un humain, de l'erreur.
nomFichier
Facultatif- Le nom du fichier contenant le code provoquant l'erreur.
numLigne
Facultatif- Le numéro de la ligne du code qui a provoqué l'exception.
Propriétés
SyntaxError.prototype
- Cette méthode permet d'ajouter des propriétés aux instance de
SyntaxError
.
Méthodes
L'objet global SyntaxError
ne contient pas de méthodes directes. En revanche, il hérite de méthodes grâce à sa chaîne de prototypes.
Instances de SyntaxError
Propriétés
SyntaxError.prototype.constructor
- Définit la fonction qui a créé le prototype d'une instance.
SyntaxError.prototype.message
- Un message d'erreur. Bien que ECMA-262 définisse que
SyntaxError
doit avoir une propriétémessage
en propre, dans SpiderMonkey, elle est héritée depuisError.prototype.message
. SyntaxError.prototype.name
- Un nom d'erreur. Propriété héritée depuis
Error
. SyntaxError.prototype.fileName
- Le chemin du fichier qui a causé l'erreur. Propriété héritée depuis
Error
. SyntaxError.prototype.lineNumber
- Le numéro de la ligne du fichier qui a causé l'erreur. Propriété héritée depuis
Error
. SyntaxError.prototype.columnNumber
- Le numéro de la colonne dans la ligne qui a causé l'erreur. Propriété héritée depuis
Error
. SyntaxError.prototype.stack
- La pile d'appels (stack trace). Propriété héritée depuis
Error
.
Méthodes
Exemples
Intercepter une exception SyntaxError
try { eval('toto truc'); } 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" }
Créer une exception SyntaxError
try { throw new SyntaxError('Coucou', 'unFichier.js', 10); } catch (e) { console.log(e instanceof SyntaxError); // true console.log(e.message); // "Coucou" console.log(e.name); // "SyntaxError" console.log(e.fileName); // "unFichier.js" console.log(e.lineNumber); // 10 console.log(e.columnNumber); // 0 console.log(e.stack); // "@Scratchpad/2:11:9\n" }
Spécifications
Spécification | Statut | Commentaires |
---|---|---|
ECMAScript 3rd Edition (ECMA-262) | Standard | Définition initiale. |
ECMAScript 5.1 (ECMA-262) La définition de 'SyntaxError' dans cette spécification. |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) La définition de 'SyntaxError' dans cette spécification. |
Standard | |
ECMAScript Latest Draft (ECMA-262) La définition de 'SyntaxError' dans cette spécification. |
Projet |
Compatibilité des navigateurs
Le tableau de compatibilité de cette page a été généré à partir de données structurées. Si vous souhaitez contribuer à ces données, n'hésitez pas à consulter https://github.com/mdn/browser-compat-data et à nous envoyer une pull request.
Update compatibility data on GitHub
Ordinateur | Mobile | Serveur | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Support simple | Chrome Support complet Oui | Edge Support complet Oui | Firefox Support complet 1 | IE Support complet Oui | Opera Support complet Oui | Safari Support complet Oui | WebView Android Support complet Oui | Chrome Android Support complet Oui | Edge Mobile Support complet Oui | Firefox Android Support complet 4 | Opera Android Support complet Oui | Safari iOS Support complet Oui | Samsung Internet Android Support complet Oui | nodejs Support complet Oui |
Légende
- Support complet
- Support complet