[javascript] copying by value of by reference

Pagina: 1
Acties:

  • martijnvanegdom
  • Registratie: Januari 2004
  • Laatst online: 23-01 19:11
Ik ben op een leuk javascript probleem gestuit. Ik heb een vrij groot object, en daar wil ik een clone van hebben. Nu worden in javascript objecten via de referentie doorgegeven. Maar ik wil er dus echt een copy van hebben.

Heeft iemand een idee hoe dit te doen, zonder een functie te schrijven die voor elke primitieve value in het object (wat primiteive worden wel by value doorgegeven) een clone maakt in een nieuw object.

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 20:34

crisp

Devver

Pixelated

JavaScript:
1
var newobj = eval(obj.toSource());

;)

Intentionally left blank


  • martijnvanegdom
  • Registratie: Januari 2004
  • Laatst online: 23-01 19:11
Helaas, dit werkt niet, als ik vraag wat het 'bron-object' is krijg ik net 'object XMLDocument' echter naar de eval is het 'doel-object' nog steeds undefined

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 20:34

crisp

Devver

Pixelated

XMLDocument is geen native javascript object en is als zodanig ook niet mbv toSource() te serializen naar een string (IE heeft overigens toSource() helemaal niet geimplementeerd voor javascript primitives :/ ).
Volgens mij zijn er wel andere methods om een XMLDocument te serializen/unserializen of op een andere manier te kunnen kopieeren, maar daar moet je zelf maar even voor zoeken ;)

Intentionally left blank


Verwijderd

cloneNode(true)

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 20:34

crisp

Devver

Pixelated

Die had ik net ook in gedachten ja ;)

Intentionally left blank


  • JKVA
  • Registratie: Januari 2004
  • Niet online

JKVA

Design-by-buzzword fanatic

Kun je niet met xmlObj.responseXML de data ophalen en daar weer een nieuw XML object van maken?

Fat Pizza's pizza, they are big and they are cheezy


  • martijnvanegdom
  • Registratie: Januari 2004
  • Laatst online: 23-01 19:11
Op één of andere manier vind Firefox dat niet echt leuk. Ik heb idee dat dit probleem onstaan door een probleem in mijn threads. Dus dat ben ik nog aan het uitzoeken. Daarnaast, waarom nog een keer contact zoeken met de server als je de data al hebt? Is alleen maar overhead en inprincipe onnodig

  • martijnvanegdom
  • Registratie: Januari 2004
  • Laatst online: 23-01 19:11
Na wat tests met mijn applicatie, ben ik tot de conclusie gekomen dat mijn keuze niet de beste is. Dus ik ga mijn probleem sever-sided afhandelen. Bedankt voor de hulp
Pagina: 1