Recall

Valor vs Referencia en memoria

shallow copy Copia superficial

deep copy Copia profunda

JSON.parse()

String → JSON

JSON.stringify() Obj → String

Documentation / Aditional

Object.assign() - JavaScript | MDN

Spread Operator Does Not Deep Copy Properties

JSON.parse() - JavaScript | MDN

JSON.stringify() - JavaScript | MDN

Notes

<aside> 📌 SUMMARY: Al copiar obj hay que tener cuidado de copiar el valor NO la referencia en memoria para luego poder modificar solamente lo que necesitamos Object.assing y Spread Operator realizan copias superficiales (de primer nivel) Con JSON.parse( JSON.stringify (obj)) realizamos copia profunda

</aside>