Oprette variabler dynamisk

Tags:    javascript

Hej.

Jeg sidder og prøvet at oprette nogle variabler dynamisk, men er stødt ind i nogle problemer.

Hvordan får jeg navnet fra resultatet af en variabel, til at navngive en anden?

var curdigi++;
var ndigi = 'd'+curdigi; <- Resutatet herfra
var ndigi = 2; <- Skal definere navnet herfra


Ser frem til jeres svar :)

Mvh. Christian



3 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato
var o = {},b = '_test';
o['a'+b] = 'test';
alert(o.a_test); // output: 'test'

omskrevet:

var o = new Object(); // Nyt objekt.
var b = '_test'; // streng

var index = 'a'+b; // streng, index hvor værdi skal sættes
o[index] = 'Jeg er en test streng';

//alert(o['a'+b]); // output: 'Jeg er en test streng'
alert(o['a_test']); // output: 'Jeg er en test streng'
alert(o.a_test); // output: 'Jeg er en test streng'

Et basis objekt er det der svarer nogenlunde til en kombination af classes og arrays i PHP.



Indlæg senest redigeret d. 06.11.2007 23:27 af Bruger #10216
var b = '_test';
eval('var a'+b+' = 2;');
alert(a_test); // output: 2

Men du burde hellere bruge object-typer...

var o = {},b = '_test';
o['a'+b] = 'test';
alert(o.a_test); // output: 'test'



Indlæg senest redigeret d. 06.11.2007 20:49 af Bruger #10216
Mange tak for svaret Gnu, jeg fik det til at virke perfekt :)

Jeg brugte det med object typer da det lød som den bedste løsning.

Er det muligt at du kan forklare koden når du har tid? Så jeg faktisk lærer noget af det :)

Mange tak, mvh Christian.



t