Come faccio a clonare correttamente un oggetto JavaScript?
Ho un oggetto, x
. Vorrei copiarlo come oggetto y
, in modo che le modifiche a y
non modifichino x
. Mi sono reso conto che copiare oggetti derivati da oggetti JavaScript incorporati comporterà proprietà extra e indesiderate. Questo non è un problema, dato che sto copiando uno dei miei oggetti costruiti letteralmente.
Come faccio a clonare correttamente un oggetto JavaScript?
2906
3
Da questo articolo: Come copiare array e oggetti in Javascript di Brian Huisman:
Ecco una funzione che potete usare.
Se non ci sono dipendenze circolari nel tuo oggetto, suggerisco di usare una delle altre risposte o i metodi di copia di jQuery, poiché sembrano tutti abbastanza efficaci.
Se ci sono dipendenze circolari (cioè, due sotto-oggetti si collegano l'uno all'altro), sei un po' fregato perché non c'è (da una prospettiva teorica) nessun modo per risolvere questo problema in modo elegante.