Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde, estou com o seguinte problema:
Tenho um JS que realiza o calculo de juros simples, porem na hora de apresentar o resultado o numero decimal sai muito grande, gostaria de deixar apenas duas casas após a virgula. Exemplo:
Resultado sai parecido com isso:
201,2110000000
Gostaria que fosse assim:
201,21
tentei com toFixed, mas não deu certo. No C# quando preciso fazer este tipo de coisa faço da seguinte forma:
Math.Round(valor, 2)
Achei algo parecido com isso no JS porém não soube usar. Quando eu utilizo ele simplesmente exibe somente os números antes da virgula e ignora todo o resto.(Usando o numero do exemplo acima:)
201(Falta o ,21)
Alguem poderia me dar uma ajuda?
Att,
Igor Marcante
>
Você vai usar o .toFixed(2) mesmo.
Mas esse método é um método de Number, e não de string. Então você vai usar assim:
201.2110000000.toFixed(2);
Boa tarde,
obrigado ae cara, fiz aqui e deu certo. Vou aproveitar o tópico e tirar outra duvida, sabe me dizer se tem algum problema em fazer operações com javascript usando o próprio textbox ao invés de passar o valor do textbox para uma variável e depois fazer a operação? Tipo:
$('#total_corrigido').val(parseFloat($('#valor1').val().replace(",", ".")) + parseFloat($('#valor2').val().replace(",", ".")));
Tem algum problema fazer dessa forma? Normalmente faço assim...O toFixed não estava funcionando por isso(creio eu), ai passei o valor final para uma variável, dei o toFixed e funfou.
Não, não tem problema.
Só a legibilidade do código que fica comprometida (difícil de entender).
Sempre que você lê de um input o número vem como string, por isso não funcionava.
Você vai usar o .toFixed(2) mesmo.
Mas esse método é um método de Number, e não de string. Então você vai usar assim:
201.2110000000.toFixed(2);