Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => Mensaje iniciado por: Kami en 19 Diciembre 2013, 05:26 AM

Título: Ayuda con javascript
Publicado por: Kami en 19 Diciembre 2013, 05:26 AM
Tengo una duda que no me deja dormir, me gustaría saber si se puede juntar dos palabras para crear una variable de la siguiente forma:

Código (javascript) [Seleccionar]

coin01="moneada uno";
coin02="moneada dos";
coin03="moneada tres";


for(var i=1;i < 4; i++){
alert(coin0+i);
}


Está claro que así no funciona, pero ¿Cómo se podría hacer?
Título: Re: Ayuda con javascript
Publicado por: #!drvy en 19 Diciembre 2013, 05:41 AM
Lo que estas intentando hacer va  en contra de los principios de las variables.

Variable = Un punto de referencia a un contenido dinámico. El problema de como lo intentas hacer, es que nunca sabrás exactamente cuantas variables hay a no ser que mires el código a mano.. y eso no tiene sentido.

Para eso, existen los arrays.

Código (javascript) [Seleccionar]
var un_array = ['moneda uno','moneda dos','moneda tres'];
for(var i=0; i<un_array.length; ++i){
  alert(un_array[i]);
}


De todos modos, javascript es un lenguaje de objetos y todas las variables globales se almacenan en window() así que puedes hacer lo que pides.. pero ya te digo que es muy feo.

Código (javascript) [Seleccionar]
coin1 = 'moneda uno';
coin2 = 'moneda dos';
coin3 = 'moneda tres';

for(var i=1; i<4; ++i){
  alert(window['coin'+i]);
}


Saludos
Título: Re: Ayuda con javascript
Publicado por: TrokaMc en 19 Diciembre 2013, 05:55 AM
La verdad que no entendí muy bien a lo que entendí pretendes que gracias al ciclo uniendo las 2 palabras pudiera pasar por cada variable para usar cada una... se me ocurre que puedes hacerlo interactuando con un array de ésta manera:



<script type="text/javascript">
var monedas = new Array("moneda uno", "moneda dos", "moneda tres");
for(var i=0; i<3; i++)
{
alert(monedas[0 + i]);
}
</script>


asi pasa por cada uno, moneda uno, moneda dos y moneda tres disculpame la verdad no se si eso era lo que querías hacer
Título: Re: Ayuda con javascript
Publicado por: Kami en 19 Diciembre 2013, 19:24 PM
Lo primero en lo que pensé fue arrays, el problema es que no estoy haciendo javascript para navegadores sino para Titanium Appcelerator y en la parte view del MVC no admite arrays.

La variable es

Código (javascript) [Seleccionar]

$.coin01.image="/coins/rojas/"+i+".png";
$.coin02.image="/coins/rojas/"+i+".png";


Por lo que no se que hacer para que el segundo número venga de una variable.

Código (javascript) [Seleccionar]

$.coin0[i].image="/coins/rojas/"+i+".png";
$.coin0[i].image="/coins/rojas/"+i+".png";



Está claro que así no funciona pues se interpretaría como un array el coin0.

He probado lo siguiente y tampoco funciona:
$.["coin0"+i].image="/coins/rojas/"+i+".png";