Foros del Web » Programando para Internet » Javascript »

funciones que cambian el valor de variables

Estas en el tema de funciones que cambian el valor de variables en el foro de Javascript en Foros del Web. Quiero mandar un valor desde una función a una segunda. En la segunda cambiar el dicho valor y mandarlo de regreso a la primera función ...
  #1 (permalink)  
Antiguo 21/04/2012, 05:30
(Desactivado)
 
Fecha de Ingreso: marzo-2012
Mensajes: 366
Antigüedad: 12 años, 1 mes
Puntos: 31
funciones que cambian el valor de variables

Quiero mandar un valor desde una función a una segunda. En la segunda cambiar el dicho valor y mandarlo de regreso a la primera función para seguir trabajando con ese valor ya cambiado... por ejemplo, mandándolo a una tercera función.

El caso es que tal y como está este código no me cambia el valor.

<html>
<head>
<script language="JavaScript">
function valorcambiante(n)
{
cambiovalor(n);// Quiero mandar "n" con un valor y que regrese con otro distinto.
avisar(n); //Una vez "n" ha cambiado de valor... quiero mandarlo a otra funcion con el valor cambiado.
}
function cambiovalor(n)
{
n*=2;
return n;
}
function avisar(n)
{
alert("el doble es= "+n);
}
</script>
</head>
<body>
<form name="form1">
<input type="button" value=" 1 " name="boton1" onClick="valorcambiante(1);">
<br>
<input type="button" value=" 2 " name="boton1" onClick="valorcambiante(2);">
</form>
</body>
</html>
  #2 (permalink)  
Antiguo 23/04/2012, 15:43
(Desactivado)
 
Fecha de Ingreso: marzo-2012
Mensajes: 366
Antigüedad: 12 años, 1 mes
Puntos: 31
Respuesta: funciones que cambian el valor de variables

Ya se como hacerlo, la clave está en esta función.

function valorcambiante(n)
{
cambiovalor(n);
avisar(n);
}

O bien se define una variable que recoja el valor que regresa en la primera función para luego mandarla en la segunda...

function valorcambiante(n)
{
variableA=cambiovalor(n);
avisar(variableA);
}
En este caso variableA ha de ser una variable global que toma el valor que tenga al regresar de las instrucciones de dentro de la función cambiovalor(n), y luego ya se puede mandar con dicho valor a la segunda función.

o bien en la segunda función, lo que se manda es la primera...

function valorcambiante(n)
{
avisar(cambiovalor(n));
}

En este caso, para poder mandar el valor a la función "avisar" primero ha de resolver la función cambiovalor, y al regresar el valor, avisar ya puede mandar dicho valor a su función.

---------

Y entonces, el código quedaría así...

<html>
<head>
<script language="JavaScript">
function valorcambiante(n)
{
avisar(cambiovalor(n));
}
function cambiovalor(n)
{
n*=2;
return n;
}
function avisar(n)
{
alert("el doble es= "+n);
}
</script>
</head>
<body>
<form name="form1">
<input type="button" value=" 1 " name="boton1" onClick="valorcambiante(1);">
<br>
<input type="button" value=" 2 " name="boton1" onClick="valorcambiante(2);">
</form>
</body>
</html>
  #3 (permalink)  
Antiguo 23/04/2012, 16:09
Avatar de Dafonz  
Fecha de Ingreso: octubre-2009
Mensajes: 127
Antigüedad: 14 años, 6 meses
Puntos: 36
Respuesta: funciones que cambian el valor de variables

Lo que pasa es que en el primer post nunca igualaste de nuevo la variable n, no es tanto que no lo hiciera si no donde querías que se viera.. simplemente la regresaste, entonces como dices o se iguala o bien se manda a la otra función a la hora que regresa la primera función, o tambien declaras como global para que todos puedan verla y mas que regresar la solo manejas siempre la global (this.n)

Etiquetas: funcion, funciones, html, input, variables
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 02:50.