Cheat sheet de punto flotante para JavaScript
Tipos de punto flotante
JavaScript tiene tipado dinámico y a veces convertirá implícitamente entre cadenas
y números de punto flotante (que son valores IEEE de 64 bits). Para forzar una variable
a punto flotante, utiliza la función parseFloat()
.
var num = parseFloat("3.5");
Tipos decimales
El mejor tipo decimal para JavaScript parece ser una migración de la clase de
Java BigDecimal
, que también soporta métodos de redondeo:
var a = new BigDecimal("0.01");
var b = new BigDecimal("0.02");
var c = a.add(b); // 0.03
var d = c.setScale(1, BigDecimal.prototype.ROUND_HALF_UP);
Cómo redondear
var num = 5.123456;
num.toPrecision(1) //Devuelve 5 como una cadena
num.toPrecision(2) //Devuelve 5.1 como una cadena
num.toPrecision(4) //Devuelve 5.123 como una cadena
Utilizando un método de redondeo específico:
new BigDecimal("1.25").setScale(1, BigDecimal.prototype.ROUND_HALF_UP);
Recursos
© Publicado en http://puntoflotante.org/ bajo una licencia Creative Commons Atribución Unported (BY). Original en inglés por Michael Borgwardt en http://floating-point-gui.de/.