Durante o desenvolvimento de uma aplicação web em JavaScript, foi necessário criar a função abaixo, que calcula o valor total de uma compra, aplicando desconto se o valor for superior a R$ 500,00.
function calcularTotal (compra) {
let total = 0;
for (let item of compra) {
total += item.preco * item.quantidade;
}
if (total > 500) {
total = total * 0.9;
}
return total;
}
Ao testar com uma lista de produtos, o valor final retornado estava incorreto em algumas situações específicas. Após revisão, identificou-se que o problema está relacionado a tipos de dados. Nesse contexto, a melhor correção para garantir que o cálculo seja sempre correto, considerando boas práticas de tipos e controle de fluxo, é