zkrvndm
@zkrvndm
Архитектор решений

Почему нельзя клонировать события?

Если в JavaScript все является объектом, то почему structuredClone не берет события?

Это же по идее просто объект, так какого фига...

structuredClone(new Event('input'));

// Uncaught DOMException: Failed to execute 'structuredClone' on 'Window': Event object could not be cloned.


Например массив FileList он берет и успешно клонирует:
structuredClone(document.querySelector('input[type=file]').files);

А события не хочет ни в какую.
  • Вопрос задан
  • 683 просмотра
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Ну потому что не берёт: The structured clone algorithm > Supported types

Cloning DOM nodes likewise throws a DataCloneError exception.
Как минимум нельзя клонировать DOM, а в Event есть на него ссылки.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы