Portée d'objets crées dynamiquement...

Signaler
Messages postés
2
Date d'inscription
mercredi 15 février 2006
Statut
Membre
Dernière intervention
15 février 2006
-
Messages postés
2
Date d'inscription
mercredi 15 février 2006
Statut
Membre
Dernière intervention
15 février 2006
-
var my_top:Object = new Object();
my_top["top"] = new Object(); //les tops
my_top["dates"] = new Object(); //les dates du classement en cours

/**
******* XML PARSING FUNCTIONS *******
**/
// Top 10 de tous les tops, pour la FullPage
function makeTop(success) {
if (success) {
//Definition de variables intermediaires
var racine,tops,top,joueur,dates;

//"racine" poine vers <document>
racine = this.firstChild;

//"Tops" pointe vers <tops>
tops = racine.firstChild;

//Chaque <top> est lu dans "top"
for(top = tops.firstChild; top != null; top = top.nextSibling) {
//Creation du top dans le tableau des tops
my_top.tops[top.attributes.name] = new Object();

//Chaque <joueur> est lu dans "joueur"
for(joueur = top.firstChild.firstChild; joueur != null; joueur = joueur.nextSibling) {
//Creation du joueur dans le tableau du top (la clé = le rang du joueur)
my_top.tops[top.attributes.name][joueur.attributes.rank] = new Object();
my_top.tops[top.attributes.name][joueur.attributes.rank]["name"] = joueur.attributes.name; //defintion du nom
my_top.tops[top.attributes.name][joueur.attributes.rank]["value"] = joueur.attributes.value; //definition de la valeur
}
}

//"dates" pointe vers <dates>
dates = tops.nextSibling;

//"date" pointe vers la premiere date (date_from)
for(date = dates.firstChild; date != null; date = date.nextSibling) {
my_toptoons.dates[date.attributes.name] = new Date(Number(date.attributes.year), Number(date.attributes.month), Number(date.attributes.day));
}

// Ici "my_top" est lisible completement : parfait...
}
}

//Ici "my_top" ne contient que "tops" et "dates", qui sont vides...

1 réponse

Messages postés
2
Date d'inscription
mercredi 15 février 2006
Statut
Membre
Dernière intervention
15 février 2006

Oups... J'ai oublié de mettre le texte qui allait avec ce bout de code...

Salut tout le monde,



J'ai un petit souci pour créer une sorte de gros tableau associatif.



Pour faire court :

Tous les éléments de ce tableau que je créé dans une fonction ne sont
visibles que dans cette fonction, alors que les elements crées hors de
cette fonction sont visibles globalement.



Pour faire long :


ActionScript:<hr>var my_top:Object = new Object();
my_top["top"] = new Object(); //les tops
my_top["dates"] = new Object(); //les dates du classement en cours

/**
******* XML PARSING FUNCTIONS *******
**/
// Top 10 de tous les tops, pour la FullPage
function makeTop(success) {
if (success) {
//Definition de variables intermediaires
var racine,tops,top,joueur,dates;

//"racine" poine vers <document>
racine = this.firstChild;

//"Tops" pointe vers <tops>
tops = racine.firstChild;

//Chaque <top> est lu dans "top"
for(top = tops.firstChild; top != null; top = top.nextSibling) {
//Creation du top dans le tableau des tops
my_top.tops[top.attributes.name] = new Object();

//Chaque <joueur> est lu dans "joueur"
for(joueur = top.firstChild.firstChild; joueur != null; joueur = joueur.nextSibling) {
//Creation du joueur dans le tableau du top (la clé = le rang du joueur)
my_top.tops[top.attributes.name][joueur.attributes.rank] = new Object();
my_top.tops[top.attributes.name][joueur.attributes.rank]["name"] = joueur.attributes.name; //defintion du nom
my_top.tops[top.attributes.name][joueur.attributes.rank]["value"] = joueur.attributes.value; //definition de la valeur
}
}

//"dates" pointe vers <dates>
dates = tops.nextSibling;

//"date" pointe vers la premiere date (date_from)
for(date = dates.firstChild; date != null; date = date.nextSibling) {
my_toptoons.dates[date.attributes.name] = new Date(Number(date.attributes.year), Number(date.attributes.month), Number(date.attributes.day));
}

// Ici "my_top" est lisible completement : parfait...
}
}

//Ici "my_top" ne contient que "tops" et "dates", qui sont vides...


<hr>





Ma question :

Comment faire en sorte que je puisse accéder �_ tout mon tableau depuis l'exterieur de cette fonction ?



Merci d'avance