parseInt( string , radix ) analysiert einen String und gibt eine dezimale Ganzzahl in der angegebenen Basis zurück
Dies ist die Definition, daher muss bei der Verwendung dieser Funktion zum Runden besondere Aufmerksamkeit gewidmet werden, da der erste Parameter eine Zeichenfolge ist
Zum Beispiel
parseInt(5.960464477539062e-7)
gibt 5 statt 0 aus
Daher müssen Sie stattdessen Math.floor verwenden
2. Im Internet gibt es zwei Meinungen
1.js hat nur einen Zahlentyp, nämlich eine 64-Bit-Gleitkommazahl.
2. In JS werden sowohl Ganzzahlen als auch Dezimalzahlen in Form von 64-Bit-Gleitkommazahlen gespeichert und Ganzzahloperationen werden automatisch in 32-Bit-Ganzzahlen mit Vorzeichen konvertiert.
Testergebnis js 1 korrekt
10/16777216 //5.960464477539062e-7 46777215 / 2 //23388607.5 10*16777215 //167772150 16777210 + 16777210 //16777210 + 16777210 16777210 *3 //50331630