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/.

Fork me on GitHub