Epätarkat laskutoimitukset JavaScriptissä
Murtoluvut tallennetaan tietokoneisiin siten, että ne usein voidaan esittää epätarkasti. Tässä tapauksessa saatat kohdata yllätyksen, kun tavallinen operaatio antaa outoa tuloksen. Esimerkki:
let a = 0.1 + 0.2;
alert(a); // tulostaa 0.30000000000000004
Tämän käyttäytymisen torjumiseksi voit
käyttää erityistä metodia toFixed,
joka suorittaa pyöristyksen annettuun
desimaaliin. Pyöristetään
tuloksemme:
let a = 0.1 + 0.2;
alert(a.toFixed(2)); // tulostaa '0.30'
Metodi toFixed palauttaa tuloksen
merkkijonona. Voit muuntaa sen tuloksen
luvuksi:
let a = 0.1 + 0.2;
alert(+a.toFixed(2)); // tulostaa 0.3
Tarkista, mikä on seuraavan operaation tulos:
alert(0.1 * 0.2);
Tarkista, mikä on seuraavan operaation tulos:
alert(0.3 - 0.1);