Conversão de Moedas em JavaScript

Para converter um campo float para o formado moeda segue a dica:
function FloatParaMoeda(numero, decimais, mostrarSimbolo) {
    if(decimais == undefined) decimais = 2;
    if(mostrarSimbolo == undefined) mostrarSimbolo = 'N';

    if(mostrarSimbolo == 'N')
        var retorno = numero.toLocaleString("pt-BR", {minimumFractionDigits: decimais, maximumFractionDigits: decimais});
    else
        var retorno = numero.toLocaleString("pt-BR", {style: 'currency', currency: 'BRL', minimumFractionDigits: decimais, maximumFractionDigits: decimais});

    return retorno;
}
Com isto você pode utilizar ele destas maneiras:
1) Usando o valor padrão: FloatParaMoeda(1234.56789)
Resultado: 1.234,56

2) Alterando as casas decimais: FloatParaMoeda(1234.56789, 4)
Resultado: 1.234,5678

3) Imprimindo o símbolo R$ de moeda FloatParaMoeda(1234.56789, 3, 'S')
Resultado: R$ 1.234,567


Quer converter um campo do tipo moeda para o tipo float, segue a dica:
function MoedaParaFloat(moeda, decimais){
    if(decimais == undefined) decimais = 2;

    moeda = moeda.replace(".","");
    moeda = moeda.replace(",",".");
    return parseFloat(moeda).toFixed(decimais);
}
Com isto você pode utilizar ele destas maneiras:
1) Usando o valor padrão: MoedaParaFloat('1.234,56')
Resultado: 1234.56

2) Alterando as casas decimais: MoedaParaFloat('1.234,5678', 4)
Resultado: 1234.5678

Espero ter ajudado

Postar um comentário

0 Comentários