--- title: 'Date.prototype[@@toPrimitive]' slug: Web/JavaScript/Reference/Global_Objects/Date/@@toPrimitive tags: - Date - JavaScript - Довідка - метод translation_of: Web/JavaScript/Reference/Global_Objects/Date/@@toPrimitive ---
{{JSRef}}

Метод [@@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')}}

Сумісність з веб-переглядачами

{{Compat("javascript.builtins.Date.@@toPrimitive")}}

Див. також