Foros del Web » Programando para Internet » Javascript »

suma javascript

Estas en el tema de suma javascript en el foro de Javascript en Foros del Web. buenas tengo el sigueinte problema tengo varias sumas en javascript del tipo 150.352,23 con separador de miles con punto y de decimales la coma pero ...
  #1 (permalink)  
Antiguo 15/07/2008, 09:04
 
Fecha de Ingreso: enero-2008
Mensajes: 49
Antigüedad: 16 años, 3 meses
Puntos: 0
suma javascript

buenas

tengo el sigueinte problema tengo varias sumas en javascript del tipo

150.352,23 con separador de miles con punto y de decimales la coma pero al sumar no me da el resultado correcto hay alguna forma de darla a javascript el formato del numero??

tengo la siguiente suma y el resultado que arroja es el siguiente

2.491,40 + 163.071,76 + 101.919,85 + 2.000.000,00 = 269.48100

cuando deberia dar 2.267.483,01

que problema puede estar ocurriendo??

gracias
  #2 (permalink)  
Antiguo 15/07/2008, 09:20
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: suma javascript

¿Has intentado quitándole el formato y poniendo sin los puntos?. Si el valor ingresado está formateado puedes con una función javascript quitarle ese formato y luego sumar.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 15/07/2008, 09:23
 
Fecha de Ingreso: enero-2008
Mensajes: 49
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: suma javascript

si le quito el formato solo dejo las comas ???
  #4 (permalink)  
Antiguo 15/07/2008, 09:27
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: suma javascript

Sí, así Javascript los reconocerá correctamente. Prúebalo, y nos cuentas cómo te fue.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 15/07/2008, 09:49
 
Fecha de Ingreso: enero-2008
Mensajes: 49
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: suma javascript

a=5.600
a=a.replace(/\./g,"");

seria algo mas menos asi no es cierto??

o para poder eemplazar tiene ke ser un texto???
  #6 (permalink)  
Antiguo 15/07/2008, 09:53
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: suma javascript

Sí, para poder reemplazar tiene que ser un texto. No obstante, si los datos son introducidos en input son como texto, así que antes de convertirlos a números realizas el reemplazo y listo.

Saludos

P.S.: También si lo que tienes es una variable numérica puedes convertirla usando el método toString().
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #7 (permalink)  
Antiguo 15/07/2008, 10:42
 
Fecha de Ingreso: enero-2008
Mensajes: 49
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: suma javascript

a=5.600.500
a=a.toString()

a=a.replace(/\./g,"");



disculpen cuando tengo un numero mayor o con 2 puntos el replace no funciona porque sera???
pero si es con uno solo lo reemplaza

gracias
  #8 (permalink)  
Antiguo 15/07/2008, 10:54
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: suma javascript

Al poner esto:
Código PHP:
a=5.600.500 
Javascript piensa que es un objeto y marca error, así que lo mejor es ponerlo como una cadena directamente:
Código PHP:
a='5.600.500' 
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #9 (permalink)  
Antiguo 15/07/2008, 11:32
 
Fecha de Ingreso: enero-2008
Mensajes: 49
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: suma javascript

pero si lo asigno desde otro variable asi:


var cvalue = colvalues[i][j];
cvalue=cvalue.toString();
cvalue=cvalue.replace(/\./g,"");
result += parseFloat( cvalue );

como puedo hacer para que lo asignado que es un numero se convierta en cadena ???
  #10 (permalink)  
Antiguo 15/07/2008, 11:37
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Pregunta Respuesta: suma javascript

Pues haciendo de esa manera debería funcionar, ¿cuál es el error que te marca?

P.S.: quítale el var porque de lo contrario no te permitirá asignarle un string...
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #11 (permalink)  
Antiguo 15/07/2008, 18:35
Avatar de MaBoRaK  
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 2.003
Antigüedad: 21 años
Puntos: 35
Respuesta: suma javascript

loading.............


En javascript no existe.

a=5.600.500;

sino

a=5600500

o

a=56005.00


connection closed.
__________________

Maborak Technologies
  #12 (permalink)  
Antiguo 16/07/2008, 01:21
venkman
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: suma javascript

O para decirlo más claro:
En Javascript (y en general en casi cualquier lenguaje de programación) no se usa el separador de miles. Y el signo decimal suele ser (y en Javascript lo es) el punto . no la coma ,

Así que siete mil doscientos coma trece es 7200.13 y no es 7.200,13
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 14:08.