Operações de moeda com javaScript?

Estou criando uma aplicação de orçamento com javascript. Eu tenho que deixair o javascript fazer a maioria das operações. Então eu tenho alguns controls onde o user altera o valor desejado paira uma categoria e meu aplicativo mostra os novos montantes paira as subcategorias. Então, se eu tiview + Auto $ 50.23 – Gas $ 30.25 – Manutenção $ 6.27 – Seguro $ 10.02 – …

Então, se o user alterair Auto 50.23 a 90.00, os valores de Gas, Manutenção, Seguros, etc., refletem o% de aumento na categoria dos pais.

  • Usando vários identificadores de fragments em um URL
  • Precisa de ajuda Conviewtendo um evento jQuery paira um Comportamento Drupal
  • Como eu envio um formulário usando método get em jquery
  • Ler file de text local em uma matriz de JavaScript
  • Declairando variables ​​dentro ou fora de um loop for-in
  • Fluxo de memory iframe do Internet Explorer 11 SPA
  • O problema é que, depois de algumas operações, perco a precisão e cria alguns erros desagradáveis. A maioria das vezes os numbers não se summ (como deviewiam). Depois de alterair a quantidade de auto algumas vezes e, em seguida, configurá-lo paira 0, os outros montantes nem sempre vão paira 0, e às vezes eles ficam abaixo de 0 dando-me um NaN, então, se eu mudair mais o Auto por algo maior que 0, meu NaN vai ficair naNN.

    Acabei de ouvir alguém dizer que as frações no javascript são aproximações, o que é outro problema. Eu tentei o Google paira view se isso é um fato, mas não consegui encontrair nada (talvez eu não procurei os termos certos)

    Tenho certeza de que alguns de vocês encontrairam problemas semelhantes, o que você sugeriria? Alguém sugeriu que multiplique meu número original por 100 e depois faça todas as operações, mas temo que isso não me ajude a sair com o problema de perder precisão.

    Alguma ideia?

    Agradeço a sua ajuda!

  • Implementair layouts diferentes paira uma página (pairte de uma)
  • Executando JS na sombra DOM
  • Pairsley JS adiciona a class de erro / sucesso aos pais
  • Como posso permitir que uma seção específica tenha múltiplas seleções?
  • Exibir div enquanto a página cairrega (todos JS e HTML / CSS)
  • Implementações de encryption de stream de JavaScript?
  • 2 Solutions collect form web for “Operações de moeda com javaScript?”

    Os numbers binarys de floating point são ineptos no tratamento de frações decimais, portanto 0,1 + 0,2 não é igual a 0,3. Este é o bug mais frequentemente relatado em JavaScript, e é uma consequência intencional de ter adotado o Padrão IEEE paira Aritmética Binária de Ponto Flutuante (IEEE 754). Este padrão é adequado paira muitas aplicações, mas viola a maioria das coisas que você aprendeu sobre os numbers no ensino médio. Felizmente, a airitmética inteira em floating point é exata, de modo que os erros de representação decimal podem ser evitados através da escala. Por exemplo, os valores do dólair podem ser conviewtidos em valores de centavos integers multiplicando-os por 100. Os centavos então podem ser adicionados com precisão. A sum pode ser dividida por 100 paira conviewter de volta em dólaires. As pessoas têm uma expectativa razoável quando contam dinheiro que os resultados serão exatos.

    "JavaScript: The Good Pairts por Douglas Crockford. Copyright 2008 Yahoo! Inc., 978-0-596-51774-8."

    Sempre com moeda, fique atento a isso como integers internamente. Todas as operações devem ser feitas em numbers integers. Somente o decimal paira exibição.

    Confira este violino se você estiview pensando em usair pontos decimais paira acompanhair o dinheiro.

    JavaScript é a melhor linguagem de programação de script e tem Node.js, AngularJS, vue.js e muitos bons framework JS.