Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
Constructeur Error()
Baseline Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
Le constructeurError permet de créer un objet représentant une erreur.
Dans cet article
Syntaxe
new Error();new Error(message);new Error(message, options);new Error(message, nomFichier);new Error(message, nomFichier, numeroLigne);Paramètres
messageFacultatifUne description de l'erreur, compréhensible par un humain.
optionsFacultatifUn objet avec les propriétés suivantes :
causeFacultatifUne propriété qui indique la cause spécifique de l'erreur. Lors de l'interception puis du renvoi d'une erreur avec un autre message d'erreur, cette propriété devrait être utilisée afin de transmettre le message d'erreur original.
nomFichierFacultatifNon standardLa valeur de la propriété
nomFichierpour l'objetErrorcréé. Par défaut, il s'agit du nom du fichier contenant le code qui a invoqué le constructeurError().numeroLigneFacultatifNon standardLa valeur de la propriété
numeroLignepour l'objetErrorcréé. Par défaut, il s'agit du numéro de ligne du fichier contenant l'appel au constructeurError().
Exemples
>Appel comme fonction ou comme constructeur
Lorsque le constructeurError() est utilisé comme une fonction, c'est-à-dire sans l'opérateurnew, il renverra un objetError. Aussi, on aura un comportement équivalent qu'on appelleError avec ou sans le mot-clénew.
// cette ligne…const x = Error(`J'ai été créé avec un appel de fonction !`);// …aura le même effet que celle-ci.const y = new Error(`J'ai été construite avec le mot-clé "new" !`);Transmettre une erreur en utilisantcause
Il est parfois utile d'intercepter une erreur avant de la ré-émettre avec un nouveau message. Dans de tels cas, afin de préserver les informations, on peut passer l'erreur d'origine dans le constructeur avec la propriétécause de l'option.
try { bibliothequeAvecErreurs();} catch (err) { throw new Error(`Nouveau message d'erreur`, { cause: err });}Pour un exemple plus détaillé, voircomment distinguer des erreurs semblables.
Spécifications
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-error-constructor> |