Pregunta: ¿Cómo transformo un valor en monedas?
utilización:
cantidad = 5
precio_unitario = 10.98
total = cantidad * precio_unitario
//el resultado de total de haber multiplicado esos dos valores en javascript nos traerá como resultado: 54.900000000000006
//para redondearlo y transformarlo a moneda utilizaremos la siguiente función:
total = formatCurrency(total);
document.write(total);
resultado: 54.90
//Nota: no le pases el parseInt() después de multiplicar el valor ok?
Función:
Código:
function formatCurrency(num) {
num = num.toString().replace(/\$|\,/g,'');
if(isNaN(num)) num = "0";
sign = (num == (num = Math.abs(num)));
num = Math.floor(num*100+0.50000000001);
cents = num%100;
num = Math.floor(num/100).toString();
if(cents<10) cents = "0" + cents;
for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
num = num.substring(0,num.length-(4*i+3))+
num.substring(num.length-(4*i+3));
return (((sign)?'':'-') + num + '.' + cents);
}
Saludos