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:
alguien puede decirme que hago mal?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);
saludos