Wenn ich zwei Textbox Werte bin hinzufügen, die 1.001 und 0.001 sind und dann mache ich einen parseFloat
ich 1,0019999999 bekommen. Ich will es 1.002. Kannst du mir helfen?parseFloat Funktion in JavaScript
Antwort
Dies ist ein bekanntes Problem: accuraty problem und die Minimierung des Genauigkeitsproblems sehen: minimisation
0.002 nicht genau als Basis 2 Zahl dargestellt werden kann. Ähnlich wie, dass 1/3 nicht 10.
1/3 = 0,33333 ... in der Basis von wiederkehrenden vertreten sein. Um die Zahl in der Basis 10 genau darzustellen, benötigen Sie eine unendliche Anzahl von Dezimalziffern.
0.002 ist eine Zahl, die genau in der Basis dargestellt werden können, 10 (wie wir hier sehen), aber nicht in der Basis 2, wie von Computern verwendet. Um diese Zahl genau darzustellen, würde eine unendliche Anzahl von Binärziffern benötigt.
Wenn Sie wollen eine schnelle Lösung Sie zum nächsten Tausendstel
abrunden könnenMath.round ((1,001 + 0,001) * 1000)/1000
Die Javascript Number Klasse hat eine toFixed() Funktion das wird dich bekommen, was du willst.
Sie könnten also tun parseFloat ("1,0019999"). ToFixed (3) und dass Sie würde "1,002".
Der Parameter (3 in diesem Fall) ist die Anzahl der Stellen nach dem Komma zeigen
die JavaScript-Methoden Number.toFixed()
und Number.toPrecision()
hier helfen können, aber they return a String
. Eine mögliche Lösung ist wie folgt:
var x = parseFloat(parseFloat("1.0019999999").toPrecision(3));
- 1. JavaScript parseFloat in verschiedenen Kulturen
- 2. Javascript parseFloat ohne Dezimalstellen Autofill
- 3. Javascript parseInt parseFloat und Rundung Dezimalzahlen
- 4. parseFloat() Rückkehr NaN
- 5. Parse eine schwebten Zahl mit parseFloat()
- 6. Warum gibt parseFloat (0.15)% 0.05 0.04999999999999999 zurück?
- 7. ParseFloat konvertiert rund um oder konvertiert
- 8. Umwandlung von String-Eingabe in Float64 mit ParseFloat in Golang
- 9. Alias-Funktion in Javascript
- 10. Member-Funktion in Javascript
- 11. Funktion in Funktionsaufruf Javascript
- 12. Javascript-Funktion in document.ready
- 13. Fehler in JavaScript-Funktion
- 14. Aufruf Funktion in Javascript
- 15. JavaScript-Funktion mit der Funktion in variablen
- 16. Injizieren Sie Javascript in eine JavaScript-Funktion
- 17. Javascript-Funktion
- 18. Verketten einer Funktion in JavaScript?
- 19. Einfache Anführungszeichen in JavaScript-Funktion?
- 20. Rekursive "Parsing" -Funktion in Javascript
- 21. JavaScript jQuery in PHP-Funktion
- 22. Javascript Scope in Injected Funktion
- 23. Aufrufen einer Funktion in Javascript
- 24. Geolocation in Javascript Wetter Funktion
- 25. Verwenden einer Funktion in Javascript
- 26. Pure JavaScript Fade-in-Funktion
- 27. Doppelte Funktion Aufruf in Javascript
- 28. geschachtelte Funktion Speicherverbrauch in Javascript
- 29. mit @ Html.Raw in JavaScript-Funktion
- 30. Wie Callback-Funktion in Javascript
Vielen Dank, 17 von 26. Ich wusste nicht über die ToFixed() -Funktion. – pmg
Die Methode toFixed() gibt eine Zeichenfolge (anstelle der Zahl) einer Zahl in der Festkomma-Schreibweise zurück. Daher sollten wir beim Umgang mit der toFixed() Methode vorsichtig sein. – pramodc84