В какой примитив будет преобразован объект `Date` при передаче в качестве аргумента: `new Date(new Date())`?

207
31 января 2022, 08:10

В какой примитив будет преобразован объект Date при передаче в качестве аргумента: new Date(new Date())?

Answer 1

В соответствии со спецификацией, при вызове конструктора с одним параметром будут выполнены следующие действия:

Если у переданного параметра есть внутренний слот [[DateValue]], тогда никакого приведения не происходит, просто берется значение этого слота и устанавливается в соответствующий слот нового объекта.

В противном случае к параметру применяется метод ToPrimitive и в случае, если вернулась строка - к ней применится Date.parse, иначе произойдет попытка привести к числу.

Таким образом ответом на вопрос:

В какой примитив будет преобразован объект Date при передаче в качестве аргумента: new Date(new Date())?

будет: ни в какой, так как у Date есть внутренний слот [[DateValue]].

READ ALSO
Динамическая смена ширины iframe в зависимости от VW

Динамическая смена ширины iframe в зависимости от VW

С помощью js добился подгонки iframe по ширине экранаТеперь вопрос следующий:можно ли адаптировать мои "костыли" чтобы при смене размера viewport...

89
Checkbox для выбора всех элементов списка (checkbox'ов) используя react hooks

Checkbox для выбора всех элементов списка (checkbox'ов) используя react hooks

Проблема в том, что checkbox под номером 1 не выделяется, если повторить такие шаги:

79
Сброс таймера после срабатывания всех счетчиков JS?

Сброс таймера после срабатывания всех счетчиков JS?

Было задание написать помощник измерения пульса(Условия: на странице находится три елемента поле для сообщений, поле ввода input + кнопка...

67
Как реализовать перевод слова при наведении мышки?

Как реализовать перевод слова при наведении мышки?

На сайте https://ororotv/ru при наведении мышки на субтитры появляется перевод слова

96