¿Por qué cuando cambio un par [clave, valor] específico de una copia de una propiedad de clase, la propiedad original también cambia?
class Store { constructor(data) { this.data = data; } getData() { return this.data; } overwrite(data) { let dataCopy = this.getData(); dataCopy.x = data.x; dataCopy.y = data.y; return dataCopy; } } const store = new Store({x : 50, y : 30}); console.log(store.getData()); // {x: 50, y: 30} console.log(store.overwrite({x : 5, y : 10})); // {x: 5, y: 10} console.log(store.getData()); // {x: 5, y: 10} (Why??)