Разбираемся с рекурсиейДополнительный аргументmedium

Deep Clone

Реализуйте функцию clone, которая создает глубокую копию объекта.

const obj = { x: 1, y: { z: 2, t: 3, }, }; const objCopy = clone(obj); console.log(objCopy); objCopy.y.z = 100; console.log(objCopy.y.z); // 100 console.log(obj.y.z); // 2

Объект может содержать циклические ссылки.

const obj2 = { a: 1, }; obj2.b = obj2; const obj2Copy = clone(obj2); obj2Copy.b.b.b.b.b.b.b.a = 2; console.log(obj2Copy.a); // 2 console.log(obj2.a); // 1