Boa Tarde não estou conseguindo fazer o calculo da porcentagem esta dando Error me ajudem por favor
Boa Tarde não estou conseguindo fazer o calculo da porcentagem esta dando Error me ajudem por favor
Oii, Robson! Como vai?
Agradeço por compartilhar seu código com a comunidade Alura.
O erro ao usar o símbolo de porcentagem % tá relacionado ao comportamento do eval(). Em JavaScript, o operador % não é usado para porcentagem como em uma calculadora comum, e sim para resto da divisão. Por exemplo, 10 % 3 resulta em 1, e não em 10% de 3.
Se você quer que o botão % calcule a porcentagem de um número (por exemplo, 50% se transforme em 0.5), você precisa tratar isso antes de chamar o eval. Uma dica é criar um tratamento específico para esse símbolo. Veja um exemplo de como adaptar isso:
function result() {
const display = document.querySelector('#display')
try {
const expressao = display.value.replace(/%/g, '/100')
display.value = eval(expressao)
} catch {
display.value = "Error"
}
}
Esse ajuste transforma 50% em 50/100, que é o comportamento esperado de uma calculadora padrão.
Espero ter ajudado.