Kezdőoldal » Számítástechnika » Programozás » Javascript 3.2-3=0.20000000000...

Javascript 3.2-3=0.20000000000000018?

Figyelt kérdés
Miért ez jön ki?

2016. máj. 12. 20:43
 1/4 anonim ***** válasza:
100%

Javascript evaluates "5.2-2" to a floating point number, which precision is not guaranteed.

If you need a fixed precision you could use


console.log(eval("5.2-5.0").toFixed(2)):

2016. máj. 12. 21:10
Hasznos számodra ez a válasz?
 2/4 anonim ***** válasza:
100%
Azért, mert a lebegőpontos számokat a számítógép nem tudja pontosan eltárolni, csak annak egy közelítő értékét. Az a 3.2 valójában nem 3,2. Nem tudom, a 3-mal mi a helyzet, az szerintem egy egész literál, ami pontosan van tárolva. Ezért kapod ezt az eredményt.
2016. máj. 12. 21:10
Hasznos számodra ez a válasz?
 3/4 anonim ***** válasza:

A lebegőpontos számábrázolásbak nézz utána.

Ezek a számok sohasem pontosak, ezért például soha nem is vizsgálunk direktben egyenlőséget két lebegőpontos számra.

2016. máj. 12. 22:01
Hasznos számodra ez a válasz?
 4/4 anonim ***** válasza:
100%
A lebegőpontos ábrázolás pontatlansága mellett a másik oka, hogy kettes számrendszerben ábrázolja. Ami tízes számrendszerben véges tizedes, az kettesben lehet, hogy végtelen, vagyis nem ábrázolható zárt alakban.
2016. máj. 13. 09:36
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!