function sp(obj1, obj2) {
let temp = {};
Object.defineProperties(temp, Object.getOwnPropertyDescriptors(obj1));
for (let key of Object.getOwnPropertyNames(obj1)) {
delete obj1[key];
}
Object.defineProperties(obj1, Object.getOwnPropertyDescriptors(obj2));
for (let key of Object.getOwnPropertyNames(obj2)) {
delete obj2[key];
}
Object.defineProperties(obj2, Object.getOwnPropertyDescriptors(temp));
}
let ob1 = {
n: "afd",
j: false
};
Object.defineProperty(ob1, "secret", {
value: "hidden",
enumerable: false,
configurable: true
});
let ob2 = {
m: 2
};
sp(ob1, ob2);
console.log(ob1);
console.log(ob2);
console.log("secret у ob1:", ob1.secret);
console.log("secret у ob2:", ob2.secret);