[Javascript] Effectuer une copie profonde (deep copy) d'objets

Effectuer une copie profonde (deep copy) d'objets [Javascript] - HTML/CSS - Programmation

Marsh Posté le 22-06-2007 à 17:01:33    

Bonjour,
 
Connaissez vous des fonctions javascript qui effectue des deep copy d'objets ? (Script sur le net ?)
Ca m'éviterais de réinventer la roue (en Java c'est automatique).
 
Merci.


---------------
Asus P5Q Pro | C2D E8400 3GHz@4GHz + Noctua NH-C12P | 2x2Go Patriot Extreme PC-8500 | GeForce GTX 460@Stock 1Go GLH | Crucial SSD M4 64Go Sata3
Reply

Marsh Posté le 22-06-2007 à 17:01:33   

Reply

Marsh Posté le 22-06-2007 à 17:11:40    

pourquoi tu créés 300 topics alors que t'es toujours sur le même problème?.
pourquoi tu lis pas doc?

Reply

Marsh Posté le 22-06-2007 à 19:13:05    

Giz a écrit :

Bonjour,
 
Connaissez vous des fonctions javascript qui effectue des deep copy d'objets ? (Script sur le net ?)
Ca m'éviterais de réinventer la roue (en Java c'est automatique).
 
Merci.


 
Je te conseille de relire la doc de Java...

Reply

Marsh Posté le 23-06-2007 à 00:29:23    

gizmo a écrit :

Je te conseille de relire la doc de Java...


 
Je veux dire que java c'est du vrai objet et chaque classe surcharge la méthode clone (devrait). La copie profonde se fait par simple appel à clone() 1 seule fois étant donné que les sous objets feront les sous appels à clone aussi 1 seule fois (même technique que hashCode(), compareTo, etc.).
Moral : en 1 seule instruction clone, je copie l'arborescence des objets, tout ceci grâce à l'encapsulation.
Alors que javascript, ils ont rajouté une couche semblant d'objet, combiné avec le langage au départ, on arrive à un langage cracra...comme C++ qui a voulu resté compatible C.
Java a été pensé et conçu entièrement en Objet.
 
Vive la France et vive Java ! :D.


---------------
Asus P5Q Pro | C2D E8400 3GHz@4GHz + Noctua NH-C12P | 2x2Go Patriot Extreme PC-8500 | GeForce GTX 460@Stock 1Go GLH | Crucial SSD M4 64Go Sata3
Reply

Marsh Posté le 23-06-2007 à 08:55:57    

C'est bien ce que je dis, tu devrais VRAIMENT relire la doc de JAVA avant de raconter de telles conneries...

Reply

Marsh Posté le 23-06-2007 à 21:17:15    

gizmo a écrit :

C'est bien ce que je dis, tu devrais VRAIMENT relire la doc de JAVA avant de raconter de telles conneries...


 
Tiens vas lire ça pour ta culture personnelle :
 
http://penserenjava.free.fr/pens_2 [...] =17&pge=01
 

OceanReading is composed of DepthReading and TemperatureReading objects and so, to produce a deep copy, its clone( ) must clone the references inside OceanReading. To accomplish this, the result of super.clone( ) must be cast to an OceanReading object (so you can access the depth and temperature references).


 
le clone() sur les références et le super.clone() montre bien que la méthode clone() a été (supposée) implementée dans les classes associées...du coup à simple appel permet de copier une arborescence d'objet (si on étend le principe aux sous objets puis sous sous objets (i.e. qui implémentent clone)).
Dans le code java du lien, il ne font aucune copie d'arbre explicite.
 
... :pfff:


---------------
Asus P5Q Pro | C2D E8400 3GHz@4GHz + Noctua NH-C12P | 2x2Go Patriot Extreme PC-8500 | GeForce GTX 460@Stock 1Go GLH | Crucial SSD M4 64Go Sata3
Reply

Marsh Posté le 23-06-2007 à 22:38:45    

Giz a écrit :

Je veux dire que java c'est du vrai objet et chaque classe surcharge la méthode clone (devrait). La copie profonde se fait par simple appel à clone() 1 seule fois étant donné que les sous objets feront les sous appels à clone aussi 1 seule fois (même technique que hashCode(), compareTo, etc.).
Moral : en 1 seule instruction clone, je copie l'arborescence des objets, tout ceci grâce à l'encapsulation.
Alors que javascript, ils ont rajouté une couche semblant d'objet, combiné avec le langage au départ, on arrive à un langage cracra...comme C++ qui a voulu resté compatible C.
Java a été pensé et conçu entièrement en Objet.
 
Vive la France et vive Java ! :D.


 
http://www.ecma-international.org/ [...] MA-262.pdf
http://en.wikipedia.org/wiki/Proto [...] rogramming
 
Ferme ta grande gueule et va te cultiver un peu, ça t'évitera de passer pour un gros con par manque de connaissances :)


---------------
Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck.
Reply

Marsh Posté le 23-06-2007 à 23:50:32    

0x90 a écrit :

http://www.ecma-international.org/ [...] MA-262.pdf
http://en.wikipedia.org/wiki/Proto [...] rogramming
 
Ferme ta grande gueule et va te cultiver un peu, ça t'évitera de passer pour un gros con par manque de connaissances :)


 
Surveille ton langage, les insultes sont interdits !  :kaola:  


---------------
Asus P5Q Pro | C2D E8400 3GHz@4GHz + Noctua NH-C12P | 2x2Go Patriot Extreme PC-8500 | GeForce GTX 460@Stock 1Go GLH | Crucial SSD M4 64Go Sata3
Reply

Marsh Posté le 24-06-2007 à 00:28:49    

Oui, m'enfin sur ce coup, on peut pas trop lui donner tord.
Je vais quand meme TT 0x90 1 mn symbolique pour faire plaisir a Giz et appliquer le reglement.
A+,


Message édité par gilou le 24-06-2007 à 00:30:04

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 25-06-2007 à 08:51:16    

merci pour ces interventions de haut vol giz, m'a bien fait marrer pour commencer ma semaine.

Reply

Marsh Posté le 25-06-2007 à 08:51:16   

Reply

Marsh Posté le 16-08-2007 à 17:55:04    

Je ne veux ni faire mon justicier, ni foutre la merde, mais je viens de tomber par hasard sur ce post, et je le trouve parfaitement scandaleux...
 
0x90, va

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed