Bonjour à tous (et bonnes fêtes)
J'ai raté quelque chose d'ultra basique sur le mécanisme des objets en javascript
Pour un projet d'appli j'ai un objet 'parameters' qui stocke 2 objets : les paramètres de base (par défaut) et les paramètres courants (respectivement 'parameters.def' et 'parameters.curent').
Quand un paramètre est modifié par l'utilisateur, le nouveau est stocké dans parameters.curent, mais le truc c'est que je dois conserver les paramètres de base pour pouvoir les comparer avec les paramètres courants.
Et une copie classique de parameters.def copie en référence ...
Par la suite si j'affecte une nouvelle valeur à (par exemple) parameters.curent.file elle est répercutée dans parameters.def.file, d'où mon problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 parameters.def = { file: 0, ... } // Copie vers parameters.curent (init) parameters.curent = {}; for( var s in parameters.def ){ if ( parameters.def.hasOwnProperty(s) ){ parameters.curent[s] = parameters.def[s]; } }
Comment fait on pour empêcher ça ?
Merci d'avance
Partager