Deep & Shallow Copy Javascript

How to Deep Copy / clone an object?

let user = {
	name: "Chaitanya",
	age: 22,
};

const objClone = Object.assign({}, user);
objClone.name = "Shahare";
console.log(user, objClone);

// OR ------------------

const objClone = JSON.parse(JSON.stringify(user));
objClone.name = "Shahare";
console.log(user, objClone);

// OR -------------------

const objClone = { ...user };
objClone.name = "Shahare";
console.log(user, objClone);
``