Wat is een ondiepe kopie van JavaScript?
Wat is een ondiepe kopie van JavaScript?

Video: Wat is een ondiepe kopie van JavaScript?

Video: Wat is een ondiepe kopie van JavaScript?
Video: JavaScript Objects: Shallow and Deep Copy | All You Need to Know in 10 mins! 2024, Mei
Anonim

Oppervlakkige kopie is een beetje verstandig kopiëren van een voorwerp. Er wordt een nieuw object gemaakt met een exacte kopiëren van de waarden in het oorspronkelijke object. Als een van de velden van het object verwijzingen naar andere objecten zijn, zijn alleen de referentieadressen: gekopieerd d.w.z. alleen het geheugenadres is gekopieerd.

Dit in overweging nemend, wat is een ondiepe kopie in JavaScript?

Oppervlakkige kopie is een beetje verstandig kopiëren van een voorwerp. Er wordt een nieuw object gemaakt met een exacte kopiëren van de waarden in het oorspronkelijke object. Als een van de velden van het object verwijzingen naar andere objecten zijn, zijn alleen de referentieadressen: gekopieerd d.w.z. alleen het geheugenadres is gekopieerd.

Ten tweede, wat is een ondiepe kopie van een array? EEN ondiepe kopie van een array-kopieën alleen de elementen van de Array , of het nu referentietypes of waardetypes zijn, maar dat is niet het geval kopiëren de objecten waarnaar de verwijzingen verwijzen. De referenties in de nieuwe Array verwijzen naar dezelfde objecten die de verwijzingen in het origineel Array wijzen naar.

Wat is dus diepe kopie en oppervlakkige kopie in JavaScript?

EEN diepe kopie betekent dat alle waarden van de nieuwe variabele zijn gekopieerd en losgekoppeld van de oorspronkelijke variabele. EEN Oppervlakkige kopie betekent dat bepaalde (sub)waarden nog steeds verbonden zijn met de oorspronkelijke variabele. Om het echt te begrijpen kopiëren , je moet ingaan op hoe JavaScript slaat waarden op.

Waarom hebben we een ondiepe kopie nodig?

wanneer dan ook wij gebruik de standaardimplementatie van de kloonmethode wij krijgen Oppervlakkige kopie van object betekent dat het een nieuwe instantie maakt en kopieën het hele veld van object naar die nieuwe instantie en retourneert het als objecttype, wij hebben nodig om het expliciet terug te werpen naar ons oorspronkelijke object. Dit is Oppervlakkige kopie van het voorwerp.

Aanbevolen: