Foros del Web » Programando para Internet » Javascript »

Cómo validar número decimal

Estas en el tema de Cómo validar número decimal en el foro de Javascript en Foros del Web. Hola, Tengo el siguiente problemita con la validación de un numero decimal. Os explico, necesito comparar dos numeros decimales, en principio pueden venir cualquier cantidad ...
  #1 (permalink)  
Antiguo 28/05/2012, 08:24
 
Fecha de Ingreso: mayo-2012
Mensajes: 2
Antigüedad: 12 años, 5 meses
Puntos: 0
Cómo validar número decimal

Hola,

Tengo el siguiente problemita con la validación de un numero decimal. Os explico, necesito comparar dos numeros decimales, en principio pueden venir cualquier cantidad de decimales, es decir, puede ser:

13,251521 ó
15,36

Pero lo que se quiere es redondear el numero solo a dos decimales, de manera que queden para comparar de la siguiente forma:

13,25
15,36

Hasta ahora, utilizamos esta funcion, al que le pasabamos un numero (number) y la cantidad de decimales por la que queriamos recortar(n)

function toFixed_FixBug(number,n) {
var factor = Math.pow(10,n);
var k = number*factor
k=~~k;
return (k/factor);
}

Pero no funciona si le indicas un numero demasiado grande, por ejemplo, 15.000.000.000,01

Supongo que existe una función que se encarga de hacer lo que necesito, es decir, dado un numero decimal, me recorte el valor solo con dos decimales.

Muchas gracias.
  #2 (permalink)  
Antiguo 28/05/2012, 09:33
Avatar de diamari  
Fecha de Ingreso: marzo-2012
Mensajes: 95
Antigüedad: 12 años, 7 meses
Puntos: 30
Respuesta: Cómo validar número decimal

Porque no te funciona algo así:

parseFloat(Math.round(number * 100) / 100).toFixed(2);
  #3 (permalink)  
Antiguo 28/05/2012, 09:39
 
Fecha de Ingreso: abril-2011
Mensajes: 1.342
Antigüedad: 13 años, 6 meses
Puntos: 344
Respuesta: Cómo validar número decimal

No hay una función exacta para eso, pero puedes crear tú una parecida.

Código Javascript:
Ver original
  1. function Round(number,n) {    
  2.    var factor = Math.pow(10,n);    
  3.    return Math.round(number*factor) / factor;
  4. }

Espero que te sirva y saludos

Etiquetas: decimal, funcion
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 06:24.