[ « Var » +1] = someValue - quelque chose peut être fait comme ça?
-
29-09-2019 - |
Question
function giveValue(n){
["r"+n]=5;
}
giveValue(10);
Vous avez l'idée.
Le point est que j'ai une poignée de variables avec un nom semblable, variant seulement dans un numéro à la fin. En utilisant une instruction switch est très bien avec quelques variables à quelques reprises, mais pour ce projet particulier, il me rend fou. Je sais que je peux faire:
var r2="lol";
var someVar=eval("r"+2);
//someVar=="lol"
Et je me demandais si je peux faire quelque chose comme ça, mais avec la référence dynamique à la gauche d'une affectation.
Est-il possible?
La solution
Si vous vraiment voulez faire cela, cela devrait fonctionner:
function giveValue(n){
window['r'+n] = 5;
}
giveValue(10);
console.log(r10)
Mais s'il vous plaît, NE PAS FAIRE!
vous devriez vraiment tableaux d'utilisation !
Autres conseils
La meilleure façon est de créer un tableau appelé r
:
var r = [];
r[2] = 5;
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow