"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como resolver comportamento inesperado de arredondamento com o método toFixed() em Javascript?

Como resolver comportamento inesperado de arredondamento com o método toFixed() em Javascript?

Publicado em 2024-11-25
Navegar:910

How to Resolve Unexpected Rounding Behavior with toFixed() Method in Javascript?

toFixed não arredondando em Javascript

Ao usar o método toFixed em Javascript para arredondar números, os usuários podem encontrar resultados inesperados, onde os decimais são não arredondado conforme previsto. Em particular, números como 859.385 podem ser exibidos apenas como 859,38 em vez do esperado 859,39.

Certos navegadores lidam com cálculos de arredondamento de maneira diferente, levando a discrepâncias ao comparar cálculos Javascript com aqueles realizados em PHP. Para resolver isso, surgiu uma solução robusta: o método toFixed10() da Mozilla.

Este método fornece consistentemente um comportamento de arredondamento preciso em todos os navegadores. Aqui está uma linha conveniente que aproveita toFixed10():

function toFixed( num, precision ) {
    return ( (Math.round( (num   'e'   precision))   'e'   -precision)).toFixed(precision);
}

Com esta função, você pode garantir que as operações de arredondamento em Javascript se alinhem perfeitamente com aquelas em PHP, independentemente do ambiente do navegador.

Declaração de lançamento Este artigo foi reimpresso em: 1729578617 Se houver alguma violação, entre em contato com [email protected] para excluí-lo
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3