Cita:
Iniciado por marlanga
El error de precisión es tan pequeño, que a no ser que estés enviando un cohete a plutón, o haciendo un examen final de física usando javascript en vez de una calculadora, no influirá en el resultado de tus cálculos.
Un error es un error pequeño o grande


,
La verdad en mi caso no importa mucho, lo único que visualmente me molestaba ya que tengo que hacer varias operaciones y al ver que los valores no correspondían como el caso que puse a principio dudaba si lo estaba haciendo bien o mal.

Bueno al final después de estar toda la tarde buscando soluciones, (la verdad me parece raro siendo un problema conocido no hayan tantas como me esperaba


) así que visto lo visto he tenido que crear una función que devuelve los resultados algo mas precisos.
Código Javascript
:
Ver original<script>
function __fxop(){ return _FXOP = ((0.2+0.4) !== 0.6 )?true:false; }
function fixFloat(float){
if(typeof _FXOP == "undefined")_FXOP=__fxop();
if( !_FXOP )return float;
if( String(float).indexOf(".") != -1 ){
var l, d, n = String(float).split(".");
d = n[1]; l = d.length;
if( l >= 12 ){
d = d.split(""); d[l-1]=d[l-2];
float = parseFloat(Number(n[0]+"."+d.join("")).toFixed(l-1));
}
}
return float;
}
</script>
La verdad no encontrado otra solución y tampoco puedo estar mucho tiempo con esto pero si existe un función mejor que solucione el problema estaría encantado de verla
Gracias