Foros del Web » Creando para Internet » Flash y Actionscript »

For... if... ¿se pueden unir?... ayuda por favor

Estas en el tema de For... if... ¿se pueden unir?... ayuda por favor en el foro de Flash y Actionscript en Foros del Web. Alguien me puede decir por qué la sentencia "if" no me reconoce la variable que teoricamente ha de cambiar. No entiende la variable ¿Por quéeeeeeeeeee? ...
  #1 (permalink)  
Antiguo 16/05/2002, 10:32
 
Fecha de Ingreso: mayo-2002
Mensajes: 6
Antigüedad: 15 años, 7 meses
Puntos: 0
For... if... ¿se pueden unir?... ayuda por favor


Alguien me puede decir por qué la sentencia "if" no me reconoce la variable que teoricamente ha de cambiar. No entiende la variable ¿Por quéeeeeeeeeee? por favor me estoy volviendo loco.


for (var i=0; i<10; i++) {
if ("s1"+i+".go" == 1){
w="ok";
}
}



Las variables son:

s10.go
s11.go
s12.go
...etc.

Y ya les he asignado el valor 1 todas ellas. Si en lugar de "s1"+i+".go" escribo por ejemplo s10.go sí que me lo reconoce, pero de la otra forma no.
¿¿¿¿¿Por qué?????

Gracias gracias gracias de antemano.....
  #2 (permalink)  
Antiguo 16/05/2002, 10:52
 
Fecha de Ingreso: julio-2001
Ubicación: Barcelona
Mensajes: 922
Antigüedad: 16 años, 5 meses
Puntos: 1
Re: For... if... ¿se pueden unir?... ayuda por favor

Hola, q tal.
Te cuento a ver si te funciona esto.

if (this["s1"+i+".go"]==1)

Dime a ver q tal y te comento.

Saludos
  #3 (permalink)  
Antiguo 17/05/2002, 01:55
 
Fecha de Ingreso: mayo-2002
Mensajes: 6
Antigüedad: 15 años, 7 meses
Puntos: 0
Re: For... if... ¿se pueden unir?... ayuda por favor

Gracias pero tampoco funciona. De hecho, si la variable se la pongo por ejemplo así:

if (s12.go==1)

Entonces sí que la entiende, pero no creo que la alternativa sea escribir el bucle 10 veces. Seguro que se me escapa algo y no se que.

Por favor!! ¿¿que pasa??

Gracias de antemano.
  #4 (permalink)  
Antiguo 17/05/2002, 02:11
Avatar de ceronne  
Fecha de Ingreso: diciembre-2001
Ubicación: Paris
Mensajes: 990
Antigüedad: 16 años
Puntos: 1
Re: For... if... ¿se pueden unir?... ayuda por favor

a ver esto

for (var i=10; i<20; i++) {
if ("s" +i+ ".go" == 1){
w="ok";
}
}


o este otro

var i=10;
while(i!=20)
if ("s" +i+ ".go" == 1){
w="ok";
}
i++;
}


  #5 (permalink)  
Antiguo 17/05/2002, 02:36
 
Fecha de Ingreso: mayo-2002
Mensajes: 6
Antigüedad: 15 años, 7 meses
Puntos: 0
Re: For... if... ¿se pueden unir?... ayuda por favor

Ceronne: gracias, lo probaré esta tarde en casa. Aunque no creo que funciones porque me parece que el fallo está en la forma de escribir la variable en la sentencia "IF".

De todas formas gracias por tu ayuda y lo intentaré. ;)
  #6 (permalink)  
Antiguo 17/05/2002, 02:44
Avatar de ceronne  
Fecha de Ingreso: diciembre-2001
Ubicación: Paris
Mensajes: 990
Antigüedad: 16 años
Puntos: 1
Re: For... if... ¿se pueden unir?... ayuda por favor

Directo del manual, jaja

Sintaxis
if(condición) {
sentencia;
{
Argumentos
condición Una expresión que evalúa como true o false. Por ejemplo,
if(name == "Erica"), evalúa la variable name para ver si es "Erica".
sentencia Las instrucciones que se deben ejecutar si o cuando la condición
evalúa como true.
Descripción
Acción; evalúa una condición para determinar la siguiente acción en una película.
Si la condición es true, Flash ejecuta la sentencia que va a continuación. Utilice
if parta crear lógica de ramas en sus scripts.
  #7 (permalink)  
Antiguo 17/05/2002, 02:47
Avatar de ceronne  
Fecha de Ingreso: diciembre-2001
Ubicación: Paris
Mensajes: 990
Antigüedad: 16 años
Puntos: 1
Re: For... if... ¿se pueden unir?... ayuda por favor

se me ocurre este otro


for (var i=10; i<20; i++) {

var mientras= "s"+i+".go";

if (mientras == 1){
w="ok";
}
}


  #8 (permalink)  
Antiguo 17/05/2002, 02:57
 
Fecha de Ingreso: mayo-2002
Mensajes: 6
Antigüedad: 15 años, 7 meses
Puntos: 0
Re: For... if... ¿se pueden unir?... ayuda por favor

Claro, eso es lo segundo que intenté. Pero tampoco. No tiene sentido. Realmente de esta manera tendría que funcionar ¿no?:

"s1"+i+".go"

Pues no funciona. Ese es el problema. O el hecho de que el "if" esté dentro del "for" (aunque lo dudo).

Pero si reconoce:

s14.go

y no la otra manera, entiendo que el problema está en la forma de escribir la variable, ¿no?

¿Tal vez las sentencias "if" tienen otra sintaxis?

Gracias.
  #9 (permalink)  
Antiguo 17/05/2002, 03:01
Avatar de ceronne  
Fecha de Ingreso: diciembre-2001
Ubicación: Paris
Mensajes: 990
Antigüedad: 16 años
Puntos: 1
Re: For... if... ¿se pueden unir?... ayuda por favor

no manejo actionscript, bueno, no mucho

mi duda está en esto:
"s"+i+".go";

Actionscript tiene la frexibilidad como PHP para convertir una variable tipo INTEGER a CHAR? o acaso tienes que convertir primero i a un caracter?

para mí que el problema está ahí
  #10 (permalink)  
Antiguo 17/05/2002, 03:17
Avatar de ceronne  
Fecha de Ingreso: diciembre-2001
Ubicación: Paris
Mensajes: 990
Antigüedad: 16 años
Puntos: 1
Re: For... if... ¿se pueden unir?... ayuda por favor

en C haría algo así

icar = char(i);
mientras = "s" + icar + "..............
  #11 (permalink)  
Antiguo 17/05/2002, 03:32
 
Fecha de Ingreso: julio-2001
Ubicación: Barcelona
Mensajes: 922
Antigüedad: 16 años, 5 meses
Puntos: 1
Re: For... if... ¿se pueden unir?... ayuda por favor

Hola, es extraño que no te funcione lo que te comente.
Lo que tu haces aqui:

("s1"+i+".go"==1)

Es comparar un string con un numero. Por eso te dije hacer esto:

(this["s1"+i+".go"==1), pq aqui nos referimos como variable.
Puedes probar a hacer esto:

(Number(this["s1"+i+".go"])==1)

Otra cuestion es donde utilizas esas variables, pero si dices q t funciona poniendo el codigo, deben de estar ahi...

Saludos
  #12 (permalink)  
Antiguo 17/05/2002, 17:07
 
Fecha de Ingreso: mayo-2002
Mensajes: 6
Antigüedad: 15 años, 7 meses
Puntos: 0
Re: For... if... ¿se pueden unir?... ayuda por favor

:( :( Me estoy desesperando, no hay manera. Llevo horas ante el monitor dejándome los ojos y no doy con la solución esto es un infierno.

Ninguna de las propuestas anteriores funciona.

¿¿¿Alguien me puede decir que lo ha probado y le funciona???

Gracias.
  #13 (permalink)  
Antiguo 17/05/2002, 18:37
 
Fecha de Ingreso: mayo-2002
Ubicación: Lima
Mensajes: 3
Antigüedad: 15 años, 7 meses
Puntos: 0
Re: For... if... ¿se pueden unir?... ayuda por favor

Por lo que veo estas tratando de armar una variable concatenando un string(caracteres) y variables,eso si se puede hacer, tu error radica en que estas comparando el string que escribes con el numero uno.
La solucion: usa la funcion eval(string)==1 donde string es la cadena que guarda la variable,...y funcionara...
Saludos
Eduardo
:P
  #14 (permalink)  
Antiguo 17/05/2002, 19:48
 
Fecha de Ingreso: mayo-2002
Mensajes: 6
Antigüedad: 15 años, 7 meses
Puntos: 0
Re: For... if... ¿se pueden unir?... ayuda por favor

:cantar: :cantar: Casi no me lo creo, la clave era estaba en EVAL().

Se me caen las lagrimas. HOy es uno de esos días en los que gritas ¡¡AL FIN!!

Gracias Eduardo y gracias a todos una vez más

Sois la hostia. No se que haría sin vosotros.
:) ;)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:55.