Estou calculando uma média e como o resultado não é número inteiro, quando incluo a tag Math.round(media) ele retorna zero. como posso ajustar esse resultado para duas casas decimais?
Estou calculando uma média e como o resultado não é número inteiro, quando incluo a tag Math.round(media) ele retorna zero. como posso ajustar esse resultado para duas casas decimais?
Olá. Por definição, não tem como você obter um retorno com casas decimais usando a função Math.round()
.
A função arredonda o valor pra cima ou pra baixo dependendo do valor após a vírgula, cortando todas as casas decimais e transformando o número num inteiro.
Ex:
Math.round(4.0);
Math.round(4.1);
Math.round(4.2);
Math.round(4.3);
retornam 4
.
Math.round(4.5);
Math.round(4.6);
Math.round(4.7);
Math.round(4.8);
Math.round(4.9);
Retornam 5
.
Não tem como obter um retorno com casas decimais usando a função especificada. Se quer obter um resultado com duas casas decimais você deve usar outra função, que é a toFixed()
, passando como parâmetro a quantidade de casas decimais que você quer. Ela arredonda somente a partir da última casa que você quer, retornando um número float
.
Ex:
var num = 2.14561;
num.toFixed(2);
retorna 2.15
.
var num = 2.13134;
num.toFixed(2);
retorna 2.13
.