buenas,
estoy implementando un carrito de la compra de un script free que he encontrado por internet. paso un valor de mi bd de productos, y el script le pasa una funcion y me da el resultado total.
tengo precios tal como 35.35, 78,93, 76.56.... pero tengo alguno como este 1259.49
y la extraña razon, es que el total, si pongo que me multiplique por 1 unidad, m,e da el siguiente resultado:
1259.949 €
os dejo la funcion:
Código:
function formatoeuros(input) {
var euros = Math.floor(input)
var tmp = new String(input)
for (var decimalAt = 0; decimalAt < tmp.length; decimalAt++) {
if (tmp.charAt(decimalAt)==".")
break;
}
var centimos = "" + Math.round(input * 100)
centimos = centimos.substring(centimos.length-2, centimos.length)
euros += ((tmp.charAt(decimalAt+2)=="9")&&(centimos=="00"))? 1 : 0;
return euros + "." + centimos
}
subtotal = subtotal + (campos[1] * campos[0]);
preciototal = formatoeuros(subtotal);
alguien puede decirme que hago mal?
saludos