Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

GuilhermeManga

Formatar moeda, $00,00 com arredondamento

Recommended Posts

Olá a todos, Gostaria de modificar minha função para quando for formatar, arredondar para cima quando o numero for ex. 34,5666 voltar com 34,57 ...segue a função que estou usando:function formatoMoeda(valor){ var valorstr = valor.toString(); var qtDecimais = 0; var er = /\./; //se encontrar um ponto de casa decimal if(valorstr.indexOf(".") != -1){ //valorstr = valorstr.replace(er, ","); qtDecimais = (valorstr.substring(valorstr.indexOf(".") + 1)).length; if(qtDecimais < 2){ valorstr += "0"; }else if(qtDecimais > 2){ valorstr = valorstr.substring(0, (valorstr.indexOf(".") + 3)); } }else{ valorstr += ".00"; } return valorstr;}

Compartilhar este post


Link para o post
Compartilhar em outros sites

O javascript possui uma função muito util para isso:var valor=34.5666;document.write(valor.toFixed(3)+"<br />"); //retorna 34.567 (arredonda para cima)document.write(valor.toFixed(2)+"<br />"); //retorna 34.57 (arredonda para cima)document.write(valor.toFixed(7)+"<br />"); //retorna 34.5666000 (preenche com zeros)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu Wagner,Então eu posso substituir toda a função que eu postei na pergunta por somente :function formatoMoeda(valor){document.write(valor.toFixed(2));return;}E mesmo os valores inteiros com o ex.31 retornaram 31.00?Valeu, abs, Manga

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso mesmo você vai fazer essa substituição.

 

Em relação aos valores, se o valor for quebrado ele arredonda, se for inteiro insere os zeros.

 

Se quiser ler mais sobre essa e outras funções para numeros visite esse link : http://developer.mozilla.org/en/docs/Core_..._Objects:Number

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.