--- title: Date.prototype[@@toPrimitive] slug: Web/JavaScript/Reference/Global_Objects/Date/@@toPrimitive tags: - Date - JavaScript - Méthode - Prototype - Reference translation_of: Web/JavaScript/Reference/Global_Objects/Date/@@toPrimitive original_slug: Web/JavaScript/Reference/Objets_globaux/Date/@@toPrimitive ---
La méthode [@@toPrimitive]() permet de convertir un objet Date en une valeur primitive.
Date()[Symbol.toPrimitive](hint);
La valeur primitive de l'objet {{jsxref("Date")}}. Selon la valeur de l'argument, la méthode peut renvoyer une chaîne de caractères ou un nombre.
La méthode [@@toPrimitive]() de {{jsxref("Date")}} renvoie une valeur primitive qui est un nombre ou une chaîne de caractère.
Si le paramètre hint vaut "string" ou "default", [@@toPrimitive]() tentera d'appeler la méthode {{jsxref("Object.prototype.toString()", "toString")}}, si la propriété toString() n'existe pas, elle tentera alors d'appeler la méthode {{jsxref("Object.prototype.valueOf()", "valueOf")}}, si cette dernière n'existe pas non plus, [@@toPrimitive]() lèvera une exception {{jsxref("TypeError")}}.
Si le paramètre hint vaut "number", [@@toPrimitive]() tentera d'abord un appel à valueOf() puis ensuite un appel à toString().
Le moteur JavaScript appelle la méthode [@@toPrimitive]() afin de convertir un objet en une valeur primitive. Il est rarement nécessaire d'appeler [@@toPrimitive]() explicitement dans son propre code, le moteur JavaScript l'utilisera automatiquement lorsqu'il détectera un objet là où une valeur primitive est attendue.
| Spécification | État | Commentaires |
|---|---|---|
| {{SpecName('ES6', '#sec-date.prototype-@@toprimitive', 'Date.prototype.@@toPrimitive')}} | {{Spec2('ES6')}} | Définition initiale. |
| {{SpecName('ESDraft', '#sec-date.prototype-@@toprimitive', 'Date.prototype.@@toPrimitive')}} | {{Spec2('ESDraft')}} |
Les données de compatibilité de ce tableau ont été générées à partir de données structurées. Si vous souhaitez contribuer à ces données, n'hésitez pas à envoyer une pull request sur https://github.com/mdn/browser-compat-data.
{{Compat("javascript.builtins.Date.@@toPrimitive")}}