Optimiser

lilbrother Messages postés 16 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 24 juillet 2009 - 2 sept. 2006 à 15:24
lilbrother Messages postés 16 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 24 juillet 2009 - 3 sept. 2006 à 02:55
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

SuperDevy Messages postés 842 Date d'inscription dimanche 24 novembre 2002 Statut Membre Dernière intervention 2 juillet 2007
2 sept. 2006 à 18:54
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 ...
0
lilbrother Messages postés 16 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 24 juillet 2009
3 sept. 2006 à 02:55
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 ??
0
Rejoignez-nous