thousand - Formato de moneda en JavaScript
input type number thousand separator (2)
Posible duplicado:
¿Cómo puedo dar formato a los números como dinero en JavaScript?
Tengo un formulario con JavaScript simple para realizar un cálculo instantáneo. Mi problema es que estoy luchando para formatearlo para que se muestre correctamente con comas y 2 decimales.
Cualquier ayuda sería muy apreciada. Gracias.
<p>
<label>My Daily Rate is:</label><br />
<input class="poundsBox" name="shares" id="shares" type="text" /><br />
<br />
<strong>Your Gross Contract Take Home:</strong></p>
<p><span class="result">£ <span id="result"></span></span></p>
The above illustration is provided for guidance only. Please complete the request form below for a detailed personal illustration.
<script type="text/javascript">
$("#shares").keyup(function() {
var val = parseFloat($(this).val());
// If val is a good float, multiply by 260, else show an error
val = (val ? val * 260 * 0.88 : "Invalid number");
$("#result").text(val);
})
</script>
Puede usar los métodos de Precision () y toFixed () del tipo Número. Revisa este enlace ¿Cómo puedo dar formato a los números como dinero en JavaScript?
Puedes usar el método estándar JS toFixed
var num = 5.56789;
var n=num.toFixed(2);
//5.57
Para agregar comas (para separar 1000) puede agregar expresiones regulares de la siguiente manera (donde num
es un número):
num.toString().replace(/(/d)(?=(/d/d/d)+(?!/d))/g, "$1,")
//100000 => 100,000
//8000 => 8,000
//1000000 => 1,000,000
Ejemplo completo:
var value = 1250.223;
var num = ''$'' + value.toFixed(2).replace(/(/d)(?=(/d/d/d)+(?!/d))/g, "$1,");
//document.write(num) would write value as follows: $1,250.22
El carácter de separación depende del país y la localidad. Para algunos países puede ser necesario .