HighDots Forums  

somma di decimali

Javascript (Italian) Il linguaggio JavaScript (it.comp.lang.javascript)


Discuss somma di decimali in the Javascript (Italian) forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Sergio
 
Posts: n/a

Default somma di decimali - 06-26-2008 , 10:50 AM






Ciao,
se inserisco in una pagina html questa riga
<input type="button" onClick="alert(Number('429612.47')
+Number('59639.37'))">
al click ho uno strano risultato nell'alert
ed esattamente il numero 489251.83999999997

perchè questo errore nella somma ?

Grazie

Sergio

Reply With Quote
  #2  
Old   
ZER0
 
Posts: n/a

Default Re: somma di decimali - 06-26-2008 , 11:05 AM






On Thu, 26 Jun 2008 07:50:42 -0700 (PDT), Sergio wrote:

[cut]
Quote:
perchè questo errore nella somma ?
Non è un errore. Javascript gestisce i numeri in binario secondo lo
standard IEEE per il calcolo in virgola mobile:

<http://it.wikipedia.org/wiki/IEEE_754>

Puoi trovare ulteriori informazioni in merito usando google e negli
archivi di questo NG (se ne è già discusso in passato).

--
~ "It may be that the old astrologers had the truth exactly reversed,
when they believed that the stars controlled the destinies of men.
The time may come when men control the destinies of stars."
(Arthur C. Clarke)



Reply With Quote
  #3  
Old   
Dr J R Stockton
 
Posts: n/a

Default Re: somma di decimali - 06-26-2008 , 03:09 PM



In it.comp.lang.javascript messaggio <00da5e0e-223c-4395-a2c7-4f23220ca1
51 (AT) r66g2000hsg (DOT) googlegroups.com>, 26 Jun 2008 07:50:42, Sergio
<sergio.meligrana (AT) gmail (DOT) com> ha scritto:

Quote:
se inserisco in una pagina html questa riga
input type="button" onClick="alert(Number('429612.47')
+Number('59639.37'))"
al click ho uno strano risultato nell'alert
ed esattamente il numero 489251.83999999997

perchè questo errore nella somma ?
x = 429612.47+59639.37 -> 489251.83999999996

y = (42961247+5963937)/100 -> 489251.84

Ove possibile, il lavoro in interi: uso piuttosto che centesimi di euro.

È una buona idea di leggere il newsgroup CLJ e le sue FAQ. Vedere qui di
seguito. FAQ 4,7 fa riferimento, e <URL:http://www.merlyn.demon.co.uk/j
s-maths.htm> via <http://translate.google.com/translate_t?langpair=en|it
Quote:
--
(c) John Stockton, nr London UK. ?@merlyn.demon.co.uk IE7 FF2 Op9 Sf3
news:comp.lang.javascript FAQ <URL:http://www.jibbering.com/faq/index.html>.
<URL:http://www.merlyn.demon.co.uk/js-index.htm> jscr maths, dates, sources.
<URL:http://www.merlyn.demon.co.uk/> TP/BP/Delphi/jscr/&c, FAQ items, links.


Reply With Quote
  #4  
Old   
nic
 
Posts: n/a

Default Re: somma di decimali - 06-26-2008 , 06:40 PM



Comunque dovresti riuscire a ottenere la precisione voluta con
toFixed(numero, 2) o toPrecision(numero, 2)
nic

Reply With Quote
  #5  
Old   
nic
 
Posts: n/a

Default Re: somma di decimali - 06-26-2008 , 06:42 PM



On Jun 27, 12:40*am, nic <nicola.ri... (AT) gmail (DOT) com> wrote:
Quote:
Comunque dovresti riuscire a ottenere la precisione voluta con
toFixed(numero, 2) o toPrecision(numero, 2)
* *nic
errore, mi rispondo da solo...
numero.toFixed(2) oppure numero.toPrecision(2)


Reply With Quote
  #6  
Old   
Gufo Rosso
 
Posts: n/a

Default Re: somma di decimali - 06-28-2008 , 08:13 PM



Dr J R Stockton ha scritto:
Quote:
In it.comp.lang.javascript messaggio <00da5e0e-223c-4395-a2c7-4f23220ca1
51 (AT) r66g2000hsg (DOT) googlegroups.com>, 26 Jun 2008 07:50:42, Sergio
sergio.meligrana (AT) gmail (DOT) com> ha scritto:

se inserisco in una pagina html questa riga
input type="button" onClick="alert(Number('429612.47')
+Number('59639.37'))"
al click ho uno strano risultato nell'alert
ed esattamente il numero 489251.83999999997

perchè questo errore nella somma ?

x = 429612.47+59639.37 -> 489251.83999999996

y = (42961247+5963937)/100 -> 489251.84

Ove possibile, il lavoro in interi: uso piuttosto che centesimi di euro.

È una buona idea di leggere il newsgroup CLJ e le sue FAQ. Vedere qui di
seguito. FAQ 4,7 fa riferimento, e <URL:http://www.merlyn.demon.co.uk/j
s-maths.htm> via <http://translate.google.com/translate_t?langpair=en|it



scusaTe il modo, conosci tinymce ?
se si mi daresti un aiutino per un paio di controlli con ajax
sto aggiungendo:

2 listbox
2 text input (aggiunto ho degli errori)
1 button

riesco ad creare la stringa per ajax delle 2 listbox
non riesco a settare le listbox prendendo un valore

nelle text input non riesco a leggere il value

la txt input e' nella barra non e' il WYSIWYG di tinymce


















Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.