Supposons que j'ai besoin de déclarer une variable JavaScript basée sur un compteur, comment dois-je le faire?
var pageNumber = 1;
var "text"+pageNumber;
Le code ci-dessus ne fonctionne pas.
Supposons que j'ai besoin de déclarer une variable JavaScript basée sur un compteur, comment dois-je le faire?
var pageNumber = 1;
var "text"+pageNumber;
Le code ci-dessus ne fonctionne pas.
En JavaScript (que je sache) il existe 2 façons de créer des variables dynamiques :
eval :
var pageNumber = 1;
eval("var text" + pageNumber + "=123;");
alert(text1);
objet window :
var pageNumber = 1;
window["text" + pageNumber] = 123;
alert(window["text" + pageNumber]);
Par exemple, j'ai un tableau dans une variable dynamique window["text" + pageNumber]
- comment obtenir la taille du tableau ?
Il y a beaucoup de façons d'accéder auxdites variables: en parcourant un ensemble de numéros où les variables sont nommées var1, var2, var3. Ou en récupérant un ensemble de variables inconnu et en les chargeant dynamiquement en parcourant un objet json et en mettant à jour les variables globales, je suis sûr qu'il existe de nombreux autres scénarios
Vous pouvez également envelopper votre compteur dans un objet :
var PageNumber = (function() {
var value = 0;
return {
getVal: function(){return value;},
incr: function(val){
value += val || 1;
this['text'+value]=true /*or some value*/;
return this;
}
};
})();
alert(PageNumber.incr().incr().text2); //=>true
alert(PageNumber['text'+PageNumber.getVal()]) /==> true
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.