Formatar dinheiro com JavaScript

2a atrás

0 0

A seguinte função em #JavaScript formata números ou strings numéricas para o formato do real:

function currencyFormatted(amount) {
  return `R$ ${parseFloat(amount).toFixed(2).replace('.', ',').replace(/\d(?=(\d{3})+,)/g, '!code1!amp;.')}`;
}

Explicando a função

undefined

parseFloat(amount).toFixed(2)

Caso o parâmetro "amount" seja uma string numérica ele será convertido para float, logo após será adicionado duas casas decimais com .toFixed(2)

undefined

.replace('.', ',').replace(/\d(?=(\d{3})+,)/g, '!code1!amp;.')

undefined- .replace('.', ',') - vai substituir o ponto por ","- .replace(/\d(?=(\d{3})+,)/g, '$&.') - vai adicionar um "." logo após uma sequência de 3 dígitos antes da ","

Dessa forma, você pode usar a função "currencyFormatted" da seguinte maneira:

currencyFormatted(1); // R$ 1,00
currencyFormatted(2.5); // R$ 2,50
currencyFormatted('3.50'); // R$ 3,50
currencyFormatted(1000000); // R$ 1.000.000,00


Comentários (0)

0/512
Link