| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Global_Objects/Error/Error | [Back] [Original] |
Get to know MDN better
Cette page a t traduite partir de l'anglais par la communaut. Vous pouvez contribuer en rejoignant la communaut francophone sur MDN Web Docs.
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 constructeur Error permet de crer des objets Error.
new Error()
new Error(message)
new Error(message, options)
new Error(message, fileName)
new Error(message, fileName, lineNumber)
Error()
Error(message)
Error(message, options)
Error(message, fileName)
Error(message, fileName, lineNumber)
Note :
Error() peut tre appel avec ou sans new. Les deux crent une nouvelle instance de Error.
message FacultatifUne description de l'erreur, comprhensible par un humain.
options FacultatifUn objet avec les proprits suivantes :
cause FacultatifUne valeur indiquant la cause spcifique de l'erreur, reflte dans la proprit cause. Lors de l'interception et de la relance d'une erreur avec un message d'erreur plus prcis ou utile, cette proprit peut tre utilise pour transmettre l'erreur originale.
fileName Facultatif Le chemin vers le fichier ayant dclench cette erreur, reflt dans la proprit fileName. Par dfaut, il s'agit du nom du fichier contenant le code qui a appel le constructeur Error().
lineNumber Facultatif Le numro de ligne dans le fichier o l'erreur a t leve, reflt dans la proprit lineNumber. Par dfaut, il s'agit du numro de ligne contenant l'appel au constructeur Error().
Lorsque Error est utilis comme une fonction, c'est--dire sans new, il retourne un objet Error.
Ainsi, un simple appel Error produit le mme rsultat que la construction d'un objet Error avec le mot-cl new.
const x = Error("J'ai t cr avec un appel de fonction !");
// la ligne au-dessus a le mme effet que la suivante
const y = new Error(`J'ai t construite avec le mot-cl "new" !`);
causeIl est parfois utile d'intercepter une erreur avant de la r-mettre avec un nouveau message.
Dans de tels cas, afin de prserver les informations, on peut passer l'erreur d'origine dans le constructeur avec la proprit cause de l'option.
try {
bibliothequeAvecErreurs();
} catch (err) {
throw new Error("Nouveau message d'erreur", { cause: err });
}
Pour un exemple plus dtaill, voir comment distinguer des erreurs semblables.
optionsJavaScript ne tente de lire options.cause que si options est un objet cela vite toute ambigut avec l'autre signature non standard Error(message, fileName, lineNumber), qui exige que le deuxime paramtre soit une chane de caractres. Si vous omettez options, passez une valeur primitive comme options, ou passez un objet sans la proprit cause, alors l'objet Error cr n'aura pas de proprit cause.
// Omettre l'argument options
const erreur1 = new Error("Message d'erreur");
console.log("cause" in erreur1); // false
// Passage d'une valeur primitive
const erreur2 = new Error("Message d'erreur", "");
console.log("cause" in erreur2); // false
// Passage d'un objet sans proprit cause
const erreur3 = new Error("Message d'erreur", { details: "erreur HTTP" });
console.log("cause" in erreur3); // false
| Spcification |
|---|
| ECMAScript 2027 LanguageSpecification # sec-error-constructor |
Error, avec cause pris en charge dans core-js (angl.)cause de Error (angl.)throwtry...catchCette page a t modifie le 19 aot 2026 par les contributeurices du MDN.
ErrorObject/FunctionObject.prototype.__defineGetter__()Object.prototype.__defineSetter__()Object.prototype.__lookupGetter__()Object.prototype.__lookupSetter__()Object.prototype.hasOwnProperty()Object.prototype.isPrototypeOf()Object.prototype.propertyIsEnumerable()Object.prototype.toLocaleString()Object.prototype.toString()Object.prototype.valueOf()AggregateErrorEvalErrorInternalErrorRangeErrorReferenceErrorSyntaxErrorTypeErrorURIErrorCertaines parties de ce contenu sont protges par le droit d'auteur 19982026 des contributeurs individuels de mozilla.org. Contenu disponible sous une licence Creative Commons.
| Web Proxy Viewer | New URL | Original Page |