21 / 38
Как реализовать глубокое клонирование объекта в JavaScript?
Лучший способ в современном JavaScript -- structuredClone(): он копирует вложенные объекты, массивы, Map, Set, Date, ArrayBuffer и обрабатывает циклические ссылки. Старый хак JSON.parse(JSON.stringify()) теряет функции, undefined, Date, Map, Set и не обрабатывает циклы. Для полного контроля можно написать рекурсивную функцию.