par
Ryle » 08 janv. 2008, 17:27
Tiens, c'est vrai que je ne m'était pas posé la question avec les objets javascript, mais apparement ce qui t'arrive c'est que tu manipules des références qui pointent toutes deux vers le même objet. (Effet que l'on retrouve en php et qui a changé entre php4 et php5).
En gros :
var dateServeur = new Date(); // déclare une variable qui pointe vers une instance de l'objet Date
var dateTemp = dateServeur; // déclare une variable qui pointe vers le même objet Date
Du coup, quelque soit la variable utilisée c'est toujours la même instance qui est modifiée et la modification apparait donc pour les deux variables. Afin d'éviter cela, il te faut faire appel à une nouvelle instance de Date :
var dateServeur = new Date();
var dateTemp = new Date();
Tiens, c'est vrai que je ne m'était pas posé la question avec les objets javascript, mais apparement ce qui t'arrive c'est que tu manipules des références qui pointent toutes deux vers le même objet. (Effet que l'on retrouve en php et qui a changé entre php4 et php5).
En gros :
[php]var dateServeur = new Date(); // déclare une variable qui pointe vers une instance de l'objet Date
var dateTemp = dateServeur; // déclare une variable qui pointe vers le même objet Date[/php]
Du coup, quelque soit la variable utilisée c'est toujours la même instance qui est modifiée et la modification apparait donc pour les deux variables. Afin d'éviter cela, il te faut faire appel à une nouvelle instance de Date :
[php]var dateServeur = new Date();
var dateTemp = new Date();[/php]