Toon posts:

Javascript rekenen?

Pagina: 1
Acties:
  • 42 views sinds 30-01-2008

Verwijderd

Topicstarter
als ik met javascript een berekening wil doen klopt het niet als ik met decimalen ga rekenen
een voorbeeldje:
<script>
var reken = 8.2-8;
document.write (reken);
</script>
hier komt dus 0.1999999999999993 uit :|
en er moet dus 0.2 uitkomen iemand een idee hoe dit komt

  • sjroorda
  • Registratie: December 2001
  • Laatst online: 20-04 07:00
Komt door de floating-point operaties binnen de processor. Je kan het met een round() afvangen. Zijn meer topics over geweest!

edit:

Topic met meer (PHP-)informatie: [rml][ php] number_format foute afronding 2.495 & 12.495[/rml] ; is een bekend probleem... Helaas!

[ Voor 43% gewijzigd door sjroorda op 09-11-2005 10:55 ]


  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
Als jij met javascript berekeningen doet, dan moet je je topics posten in W&G :)

Floating point operations kunnen dit gedrag vertonen helaas, daar is weinig aan te doen, behalve op (ik zeg maar wat) 6 cijfers achter het decimaalteken afronden.

  • GlowMouse
  • Registratie: November 2002
  • Niet online
Er zijn veel vergelijkbare topics (gevonden via 'javascript rekenfout'). Daar staat direct een oplossing.

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 23-04 22:57

Janoz

Moderator Devschuur®

!litemod

Dit is gewoon standaard gedrag van floating points. Deze afwijking van minder dan 0.0000000000001% is dan ook binnen de marge. Daarnaast is dit niet specifiek voor javascript, maar voor alle programmertalen die floating point numbers hebben. Aangezien javascript niet in Programming & Webscripting hoort en er al enkele linkjes met uitleg gegeven is gaat deze op slot.

[ Voor 19% gewijzigd door Janoz op 09-11-2005 11:02 ]

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Dit topic is gesloten.