Deep Copy of an Object

You are required to implement a deep copy of an object.

A deep copy is a process in which the entire object is copied to a new object, including all nested objects and their properties.

Example

const obj = {
  a: 1,
  b: {
    c: 2,
    d: 3,
  },
};

const clonedObj = deepClone(obj);

console.log(clonedObj); // { a: 1, b: { c: 2, d: 3 } }