un truc du genre
obj={ A: {
           TRUC: { chose: 'AB01' , chose2: 0 },
           MACHIN: { chose: 'AB02' , chose2: 0 }
         },
      B: { .....
    }



obj.A.TRUC.chose est pareil que obj['A']['TRUC']['chose'] et vaut 'AB01'

ou
obj ={ A: {
           TRUC: [ 'AB01' ,  0 ],
           MACHIN: [ 'AB02' , 1 ]
         },

et la c'est
obj.A.TRUC[0] qui est 'AB01'
Le 21/02/2011 12:01, Daniel Cartron a écrit :
Le dimanche 20 février 2011, Coucouf a écrit :
tu mélanges tableau et objet. Ça fonctionne car les tableaux sont aussi
des objets, mais ça n'est pas conçu pour, et par exemple la propriété
.length ne va pas fonctionner correctement.
Dans ce cas il faut plutôt écrire :

montableau = new Object();
montableau['CODE1'] = …

quitte à renommer la variable. :-)

merci, je commence à étudier les objets, effectivement ça me paraît plus
adapté.

Dans ton exemple je ne comprends pas ce qui te pose problème. (Ni
pourquoi il y a un montableau et un montableaube d'ailleurs.)

heu, erreur de copier coller ;-)

Le plus simple si tu veux chercher des valeurs par TRUC/MACHIN et A/B/C
est de définir les objets qui correspondent :
obj = new Object;
obj['TRUC'] = new Object;
obj['TRUC']['A'] = …
obj['TRUC']['B'] = …
obj['TRUC']['C'] = …
obj['MACHIN'] = new Object;

Ton modèle doit marcher aussi, mais tu devras parcourir les différents
étages de ton tableau pour trouver les A, B, C…

Concernant les performances, vu l'efficacité des navigateurs actuels ça
n'est pas la peine de te poser la question je pense, à moins que tu
n'aies des milliers de lignes à parcourir.

200 environ ou le double selon comment j'arriverai à gérer de façon
intelligente la variable truc/machin... Parce qu'en fait c'est d'abord sur ABC
que je fais une recherche, puis selon que c'est TRUC ou MACHIN je récupère
CODEn et 0123 qui ne sont pas les mm

En clair, et en reprenant ta vision du tableau :
A peut être soit TRUC soit MACHIN et pour chaque valeur il a un CODE et un
0123 donc je voudrais écrire par exemple (c'est pas la bonne syntaxe c'est
pour expliquer mon besoin) :
obj = new Object;
obj['A'] = new Object;
obj['A']['TRUC']=['AB01'][0];
obj['A']['MACHIN']=['CD04'][3];
etc.

Donc comment je le construit mon objet ?

Merci d'avance


_________________________________
Linux mailing list
Linux@lists.parinux.org
http://lists.parinux.org/mailman/listinfo/linux

Répondre à