JavaScript · Senior · Запитання 45 з 75

Що поверне вираз?

const obj = {
  [Symbol.toPrimitive](hint) {
    return hint === "number" ? 42 : "obj";
  },
};
console.log(+obj, `${obj}`);

Пояснення

Під час перетворення на примітив рушій викликає Symbol.toPrimitive з підказкою 'number', 'string' або 'default'. Без нього використовуються valueOf і toString. Так працює, наприклад, віднімання дат: date2 - date1.

Де почитати

Помилка в запитанні

JavaScript · Senior · запитання 45

Перевірте себе

Пройдіть тест JavaScript · Senior: запитання й варіанти перемішуються, а наприкінці - розбір помилок.

Пройти цей тест