--- title: 'Date.prototype[@@toPrimitive]' slug: Web/JavaScript/Reference/Global_Objects/Date/@@toPrimitive tags: - Date - JavaScript - Довідка - метод translation_of: Web/JavaScript/Reference/Global_Objects/Date/@@toPrimitive ---
Метод [@@toPrimitive]() перетворює об'єкт Date на просте значення.
Date()[Symbol.toPrimitive](hint);
Просте значення наданого об'єкта {{jsxref("Date")}}. В залежності від аргументу, метод може повернути або рядок, або число.
Метод [@@toPrimitive]() об'єкта {{jsxref("Date")}} повертає просте значення, яке належить або до числового, або до рядкового типу.
Якщо hint дорівнює "string" або "default", [@@toPrimitive]() намагається викликати метод {{jsxref("Object.prototype.toString()", "toString")}}. Якщо властивість toString не існує, він намагається викликати метод {{jsxref("Object.prototype.valueOf()", "valueOf")}}, а якщо valueOf також не існує, [@@toPrimitive]() викидає помилку {{jsxref("TypeError")}}.
Якщо hint дорівнює "number", [@@toPrimitive]() спрочатку намагається викликати valueOf, а якщо не вдається, він викликає toString.
JavaScript викликає метод [@@toPrimitive]() для перетворення об'єкта на просте значення. Вам рідко знадобиться викликати метод [@@toPrimitive]() власноруч; JavaScript автоматично викликає його, коли зустрічає об'єкт там, де очікується просте значення.
const testDate = new Date(1590757517834);
// "Date Fri May 29 2020 14:05:17 GMT+0100 (British Summer Time)"
testDate[Symbol.toPrimitive]('string');
// Returns "Date Fri May 29 2020 14:05:17 GMT+0100 (British Summer Time)"
testDate[Symbol.toPrimitive]('number');
// Returns "1590757517834"
testDate[Symbol.toPrimitive]('default');
// Returns "Date Fri May 29 2020 14:05:17 GMT+0100 (British Summer Time)"
| Специфікація |
|---|
| {{SpecName('ESDraft', '#sec-date.prototype-@@toprimitive', 'Date.prototype.@@toPrimitive')}} |
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
{{Compat("javascript.builtins.Date.@@toPrimitive")}}