Bonjour,
Bon le titre est super long,mais je ne sais pas comment définir mieux mon incompréhension en ce qui concerne l'affectation d'objet.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
 
function Planete(options){
  options = options || {};
  this.name=options.name||"";
//...
}
Planete.prototype={
  set:function(jour,lieu){
     if(!jour){jour=Maintenant;}
     if(!lieu){lieu=Ici;}
     //... initialize toutes les propriétés d'une planéte
       switch(this){
         case SysSol.corps.SOLEIL :
            datSol(jour,lieu);
            break;
           //... fonction déterminant les données du soleil
         case SysSol.corps.LUNE :
            datLun(jour,lieu);
            break;
          // ... fonction déterminant les données de la lune
         default :
            datPlan(jour,lieu);
            break;
          // ... pour le reste
       }
       return this;
  }
}
 
var SysSol = {
    corps:{
       SOLEIL = new Planete({
           name : 'Soleil',
           o : {val: 1.243,correction : 4.456}
           //...
         },
       LUNE =new Planete({
 
       }
       //...
      }
     constantes:{
       //...
     }
for(var i in SysSol.corps){SysSol.corps[i].set();}
Jusque là ça marche. Mais j'ai quand même l'impression de faire des bévues
Par contre à partir de là je comprend plus ce qui se passe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
function systemeSolaireEvents(lieu,dure){
	pdat = {}; // positions de tous les objets pour la période
	var j=0;
	var jdeb = lieu.date-2;
         var jmax=jdeb+dure;
	while(jdeb<jdmax){
	    pdat[j]= {};
	   for (var i in SysSol.corps) {pdat[j][i] = SysSol.corps[i].set(jd,obs);}
	j++;
	jdeb++;
	}
 
}
systemeSolaireEvents(ici,7);
pdat[j][i] représente, pour toutes les valeurs de j, toujours les mêmes valeurs pour l'objet i qui est d'ailleurs la valeur qu'aurait cet objet à jdeb+8???
Une âme charitable pourrait-t-elle m'expliquer ce comportement (ou m'indiquer où je pourrais avoir une explication car même si Google est ton ami encore faut-il savoir quelle question poser!) et éventuellement si c'est pas trop abuser une piste pour résoudre ce problème.
Merci.