Foros del Web » Programando para Internet » Javascript »

Sumar en Javascript

Estas en el tema de Sumar en Javascript en el foro de Javascript en Foros del Web. Hola, Tengo esto Código HTML: <script language= "Javascript" type= "text/javascript" > function suma() { var num = document.forms['0']['a'].value; //Suponemos que es 5 num = num ...
  #1 (permalink)  
Antiguo 03/08/2008, 09:07
Avatar de JoniJnm  
Fecha de Ingreso: mayo-2007
Ubicación: Madrid
Mensajes: 264
Antigüedad: 16 años, 11 meses
Puntos: 4
Sumar en Javascript

Hola,

Tengo esto
Código HTML:
<script language="Javascript" type="text/javascript">
function suma() {
var num = document.forms['0']['a'].value; //Suponemos que es 5
num = num + 0.15;
//también he probado num += 0.15;
alert(num);
}
</script> 
Y no sé por qué en vez de sumar el número, añade la cadena, es decir, imprime esto:
50.15

Hace esto: alert(num+''+0.15);

Tengo que especificar en algún lado que num es un número? Gracias
__________________
JoniJnm.es

Última edición por JoniJnm; 03/08/2008 a las 09:15
  #2 (permalink)  
Antiguo 03/08/2008, 09:35
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 19 años, 11 meses
Puntos: 834
Respuesta: Sumar en Javascript

Evidentemente está considerando a num como cadena. Entonces, podrías probar así:
Código PHP:
num parseInt(num) + 0.15
  #3 (permalink)  
Antiguo 03/08/2008, 10:34
Avatar de JoniJnm  
Fecha de Ingreso: mayo-2007
Ubicación: Madrid
Mensajes: 264
Antigüedad: 16 años, 11 meses
Puntos: 4
Respuesta: Sumar en Javascript

Hola, gracias por responder, el problema es que cuando num es un número decimal se pierden sus decimales al hacer parseInt, se hace entero. Cómo podría mantenerlos?
__________________
JoniJnm.es
  #4 (permalink)  
Antiguo 03/08/2008, 10:43
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 19 años, 11 meses
Puntos: 834
Respuesta: Sumar en Javascript

Con parseFloat entonces ;)
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 18:49.