Копирование (клонирование) объекта:
let user = {
name: "John",
age: 30
};
let clone = Object.assign({}, user);
но это ПОВЕРХНОСТНОЕ КОПИРОВАНИЕ. Н.п. при клонировании такого объекта:
let user = {
name: "John",
sizes: {
height: 182,
width: 50
}
};
let clone = Object.assign({}, user); // клонируется в ПУСТОЙ объект "{}"
// поле "sizes" НЕ БУДЕТ СКЛОНИРОВАНО.
alert( user.sizes === clone.sizes ); // true, тот же объект
// user и clone обладают общим свойством sizes
user.sizes.width++; // изменяем свойства в первом объекте
alert(clone.sizes.width); // 51, видим результат в другом
Для полного копиования возьмите готовую реализацию, например _.cloneDeep(obj) из библиотеки JavaScript lodash. (https://learn.javascript.ru/object-copy)