Optimiser

Signaler
Messages postés
16
Date d'inscription
mardi 11 novembre 2003
Statut
Membre
Dernière intervention
24 juillet 2009
-
Messages postés
16
Date d'inscription
mardi 11 novembre 2003
Statut
Membre
Dernière intervention
24 juillet 2009
-
bonjours à tous !
voila je ve sauvegarder des données dans un Shared Object. et pour ce faire voila comment je fais :

         touche.data.P1haut = P1.haut.charCodeAt();
        touche.data.P1bas = P1.bas.charCodeAt();
        touche.data.P1gauche = P1.gauche.charCodeAt();
        touche.data.P1droit = P1.droit.charCodeAt();
        touche.data.P1poing1 = P1.poing1.charCodeAt();
        touche.data.P1pied1 = P1.pied1.charCodeAt();
        touche.data.P1special1 = P1.special1.charCodeAt();
        touche.data.P1valider = P1.valider.charCodeAt();

         touche.data.P2haut = P2.haut.charCodeAt();
        touche.data.P2bas = P2.bas.charCodeAt();
        touche.data.P2gauche = P2.gauche.charCodeAt();
        touche.data.P2droit = P2.droit.charCodeAt();
        touche.data.P2poing1 = P2.poing1.charCodeAt();
        touche.data.P2pied1 = P2.pied1.charCodeAt();
        touche.data.P2special1 = P2.special1.charCodeAt();
        touche.data.P2valider = P2.valider.charCodeAt();
         touche.flush()

Ma sauvegarde et tout se fait très bien je n'ai aucun soucis avec sa mon probleme c'est que mon  code se répète beaucoup trop et si la jai jusqu'à P2 ba je peux aller jusq'à P4 normalement....donc je n'ai pas envie de répété ce code en 4fois... mais je sais pas du tout comment l'optimiser....

pour la partie de droite je pourrais facilement faire un truc du genre :

this["P"+i].haut.charCodeAt();

et mettre sa dans une boucle mais pour la partie de gauche je ne sais pas du tout comment m'y prendre....

donc j'aimerais savoir si quelqu'un a une idée à me suggerrer  ! quitte à changer le nom de mes varriables du coté gauche !

Ba merci d'avance !!!

2 réponses

Messages postés
842
Date d'inscription
dimanche 24 novembre 2002
Statut
Membre
Dernière intervention
2 juillet 2007

Tu peux utiliser une boucle for...in

for (var i=1; i<=4; i++) {
  var p = this['P'+i];
  for (var v in p) {
    touche.data['P'+i+v] = p[v];
  }
}

SuperDevy, c la !Escalade ...
Messages postés
16
Date d'inscription
mardi 11 novembre 2003
Statut
Membre
Dernière intervention
24 juillet 2009

euh...merci bcp pour ta réponse !! mais je n'ai jamais vu cette fason de faire :

for(var v in p)

tu pourrais m'expliquer  son fonctionnement stp ??