Necesito ayuda con variable string
Buenos dias. Tengo un problema que necesito resolver urgentemente para un proyecto y no le encuentro solucion.
Tengo las siguiente variables String:
<code>menu0="aaaaa0,bbbbb,ccccc,ddddd";
menu1="aaaaa1,bbbbb,ccccc,ddddd";
menu2="aaaaa2,bbbbb,ccccc,ddddd";
menu3="aaaaa3,bbbbb,ccccc,ddddd";
menu4="aaaaa4,bbbbb,ccccc,ddddd";
menu5="aaaaa5,bbbbb,ccccc,ddddd";</code>
Ahora las quiero convertir en un array y de ese array de variables tirar un array de dos niveles, bueno os dejo el codigo que supongo que lo entendereis menjor:
<code>menu0="aaaaa0,bbbbb,ccccc,ddddd";
menu1="aaaaa1,bbbbb,ccccc,ddddd";
menu2="aaaaa2,bbbbb,ccccc,ddddd";
menu3="aaaaa3,bbbbb,ccccc,ddddd";
menu4="aaaaa4,bbbbb,ccccc,ddddd";
menu5="aaaaa5,bbbbb,ccccc,ddddd";
Numero_botones = 5;
links = new Array();
botones = new Array();
for (i = 0; i < Numero_botones; i++){
menu_coje = menu1;
botones.push(menu_coje);
links[i]= botones[i].split(",");
trace(links[i]);
}
stop();</code>
De esta manera, si os fijais, le he metido que menu_coje es igual a menu1 y funciona perfectamente, el problema es cuando quiero llamar a todas las variables con el bucle, la funcion de todo esto es sacar las variables a un archivo txt, y segun el numero de variables se genere un numero de botones u otro, ademas de pasarle la variable Numero_botones, seria algo asi, pero esto no funciona:
<code>menu0="aaaaa0,bbbbb,ccccc,ddddd";
menu1="aaaaa1,bbbbb,ccccc,ddddd";
menu2="aaaaa2,bbbbb,ccccc,ddddd";
menu3="aaaaa3,bbbbb,ccccc,ddddd";
menu4="aaaaa4,bbbbb,ccccc,ddddd";
menu5="aaaaa5,bbbbb,ccccc,ddddd";
Numero_botones = 5;
links = new Array();
botones = new Array();
for (i = 0; i < Numero_botones; i++){
menu_coje = menu[i];
botones.push(menu_coje);
links[i]= botones[i].split(",");
trace(links[i]);
}
stop();</code>
Pero el problema de todo esto es que:
<code>menu_coje = menu[i]; </code>
Me da undefined.
Tambien he hecho lo siguiente, pero esto no me sirve por que el array de variables, botones esta limitado, la historia de todo esto es no estar limitados al Array:
<code>menu0="aaaaa0,bbbbb,ccccc,ddddd";
menu1="aaaaa1,bbbbb,ccccc,ddddd";
menu2="aaaaa2,bbbbb,ccccc,ddddd";
menu3="aaaaa3,bbbbb,ccccc,ddddd";
menu4="aaaaa4,bbbbb,ccccc,ddddd";
menu5="aaaaa5,bbbbb,ccccc,ddddd";
Numero_botones = 5;
links = new Array();
botones = [menu0,menu1,menu2,menu3,menu4,menu5];
for (i = 0; i < Numero_botones; i++){
links[i]= botones[i].split(",");
trace(links[i]);
}
stop();</code>
Si fueses capaces de echarme una mano con el tema o darme alguna otra solucion os estaria agradecido, ya que llevo ya una semana entera con este problema y no encuentro ninguna solucion coherente.
Un saludo y muchas gracias a todos de antemano.
ventdaval
dL
Hola!
efectivamente menu[i] está indefinido porque no existe ni menu[0], ni menu [1]....
Para que funcione el código que tienes deberás de llamar a las variables:
<code>menu[0]="aaaaa0,bbbbb,ccccc,ddddd";
menu[1]="aaaaa1,bbbbb,ccccc,ddddd";
menu[2]="aaaaa2,bbbbb,ccccc,ddddd";
menu[3]="aaaaa3,bbbbb,ccccc,ddddd";
menu[4]="aaaaa4,bbbbb,ccccc,ddddd";
menu[5]="aaaaa5,bbbbb,ccccc,ddddd";</code>
Un saludo,
David
siempre que pongas antes un:
var menu = new Array();
Aunq lo que creo que buscas lokassnow es algo asi:
this["menu"+i];
Saludos...
dl
Hola!
efectivamente menu[i] está indefinido porque no existe ni menu[0], ni menu [1]....
Para que funcione el código que tienes deberás de llamar a las variables:
<code>menu[0]="aaaaa0,bbbbb,ccccc,ddddd";
menu[1]="aaaaa1,bbbbb,ccccc,ddddd";
menu[2]="aaaaa2,bbbbb,ccccc,ddddd";
menu[3]="aaaaa3,bbbbb,ccccc,ddddd";
menu[4]="aaaaa4,bbbbb,ccccc,ddddd";
menu[5]="aaaaa5,bbbbb,ccccc,ddddd";</code>
Un saludo,
David