Wenn ich eine große Zahl mit fester Notation eintippe, ändert JS sie in wissenschaftliche Notation. Warum? Liegt es nur daran, dass es schwer ist, große Zahlen zu lesen, oder dass es irgendwie damit zusammenhängt, dass große Zahlen im Speicher gespeichert werden?Warum verwendet JS wissenschaftliche (exponentielle) Notation?
Antwort
In Javascript , Zahlen werden immer als Gleitkommazahlen gespeichert und folgen IEEE 754's format. Wie bei der Anzeige von Zahlen verwendet Javascript den ECMAScript-Anzeigealgorithmus wie von Dancrumb erwähnt, der definiert, wann mit dem Rendern von Zahlen im wissenschaftlichen Notationsformat begonnen werden soll.
Wenn Sie wissenschaftliche Notation für große Zahlen vermeiden möchten, gibt es Möglichkeiten, um es zu umgehen, die in diesem Post diskutiert werden: How to avoid scientific notation for large numbers in JavaScript?.
Die ECMA-Spezifikation definiert, wie Zahlen in Zeichenfolgen konvertiert werden (dies ist das einzige Mal, wenn Sie wissenschaftliche Notation sehen).
Der relevante Teil der Spezifikation ist hier: https://www.ecma-international.org/ecma-262/8.0/index.html#sec-tostring-applied-to-the-number-type
Soweit ich es, wissenschaftliche Schreibweise Kicks für Zahlen ausloten kann mehr als 10^21 oder weniger als 10^-6
- 1. konvertieren eine wissenschaftliche Notation/exponentielle Zahl
- 2. Exponentielle Notation nicht präzise
- 3. Wissenschaftliche Notation Umwandlung - Schema
- 4. rpart.plot entfernen wissenschaftliche Notation
- 5. wissenschaftliche Notation und Nummernfolge
- 6. Wissenschaftliche Notation in Python
- 7. numpy Block wissenschaftliche Notation
- 8. Matlab Matrix wissenschaftliche Notation
- 9. Wissenschaftliche Notation in C#
- 10. Wissenschaftliche Notation in Elixir
- 11. mongoexport Rückkehr wissenschaftliche (exponentiell) Notation
- 12. R wissenschaftliche Notation in Plots
- 13. UIStepper.value wird die wissenschaftliche Notation
- 14. Lese wissenschaftliche Notation in C
- 15. Wissenschaftliche Notation für ipywidgets slider
- 16. Java DecimalFormat Wissenschaftliche Notation Frage
- 17. Verwende wissenschaftliche Notation mit wxGrid
- 18. Display Double ohne wissenschaftliche Notation
- 19. printf, Druckwert in wissenschaftliche Notation
- 20. wissenschaftliche Notation Abstraktion in Java
- 21. berechnet doppelte Rückkehr wissenschaftliche Notation
- 22. Wissenschaftliche Notation Farbbalken in Matplotlib
- 23. MATLAB wie man Wert in Variable ohne wissenschaftliche/exponentielle Notation speichert?
- 24. Wie wird wissenschaftliche Notation in Seaborn-Heatmap-Labels verwendet?
- 25. Wissenschaftliche Notation Handy-Nummer - Excel Javascript
- 26. Wissenschaftliche Notation in Haxe über Ziele unterdrücken
- 27. CAST numerisch zu varchar gibt wissenschaftliche Notation
- 28. R: wissenschaftliche Notation falsch convers zu Zahlen
- 29. Nutzung wissenschaftliche Notation mit XTABLE in R
- 30. Disable wissenschaftliche Notation auf Achsen mit Bokeh
Die Konventionen für die Formatierung von Zahlen, wenn sie in Zeichenfolgen konvertiert werden, sind nur Konventionen. Sie können Zahlen mit Ihrem eigenen Code oder über andere Bibliotheken formatieren. – Pointy
Es hängt damit zusammen, wie Gleitkommazahlen gespeichert werden. Viele Sprachen im C-Stil verwenden die Exponentialschreibweise für den gleichen Grund. – zzzzBov
es ist nicht Javascript spezifisch. Die meisten Sprachen zeigen große Zahlen in wissenschaftlicher Notation (Excel tut es auch), weil große Zahlen zu viel Platz beanspruchen. Es hat nichts damit zu tun, wie sie im Speicher gespeichert werden – Slai