Hintergrund: Ich frage mich, ob Ihnen aufgefallen ist, dass „parseInt(0.006)“ oder „parseInt(0.0006)“ den Wert 0 zurückgibt, „parseInt(0.0000006)“ jedoch den seltsamen Wert 6 zurückgibt. Warum ist das so? Was ist die parseInt-Funktion? Zunächst einmal: Was ist die Funktion von parseInt()? Es handelt sich um eine native Methode von js, die zum Konvertieren einer numerischen Zeichenfolge in eine Zahl vom Typ „Number“ verwendet wird. Dabei wird nur der ganzzahlige Teil konvertiert. Parsen bedeutet Konvertierung. Int ist eine Ganzzahl. Der Zweck besteht darin, sie in eine Ganzzahl umzuwandeln. var num = parseInt(demo ,radix); //demo ist die Zahl, die Sie konvertieren möchten Übergeben eines Parameters var demo = "123"; var num = parseInt(demo); console.log(typeof(num) + ":" + num); //Nummer: 123 var demo = true; var num = parseInt(demo); console.log(typeof(num) + ":" + num); //Zahl: NaN var demo = false; var num = parseInt(demo); console.log(typeof(num) + ":" + num); //Zahl: NaN var demo = 123,9; var num = parseInt(demo); console.log(typeof(num) + ":" + num); //Zahl: 123, schneide die Dezimalstellen direkt ab, ohne zu runden var demo = "10"; var num = parseInt(demo, 16); console.log(typeof(num) + ":" + num); //Zahl: 16 Verwendung der Übergabe von zwei Parametern var num = parseInt(demo, radix); //radix bedeutet Basis Erklärung: Wenn die Basis als 16 geschrieben wird, denkt das System, dass sie auf Hexadezimalzahlen basiert. 10 (Null) ist Null in Hexadezimalzahlen, was auf Hexadezimalzahlen basiert. Konvertieren Sie es in Dezimalzahlen (also 16). Das Obige basiert auf der Zielbasis und wird in Dezimalzahlen konvertiert (Basisbereich ist 2-36). Beispiel: //1. parseInt(10,2) //Das Ergebnis ist 2, da 10 als Binärzahl betrachtet und in eine Dezimalzahl umgewandelt wird, um 2 zu erhalten. //2 var demo = "123abc"; var num = parseInt(demo); console.log(typeof(num) + “:” + num); //Ergebnis: Zahl: 123 //Weil parseInt bei der numerischen Klasse beginnt und bei der nicht-numerischen Klasse endet und die ursprüngliche Zahl zurückgibt Den Ursachen auf der Spur Wir haben festgestellt, dass unser ideales Ziel darin besteht, alle Dezimalzahlen in 0 umzuwandeln, aber parseInt (0.0000006) gibt 6 zurück, was unerhört ist. konsole.log(parseInt(0.006)) //0 konsole.log(parseInt(0.0006)) //0 konsole.log(parseInt(0.00006)) //0 konsole.log(parseInt(0.000006)) //0 konsole.log(parseInt(0.0000006)) //6 Als ich zurückkam, begann ich, die Gründe und den Ort des Problems zu erforschen. parseInt(0,0000006) //0,000006 Zeichenfolge (0,0000006); //6e-7 parseInt(6e-7); //6 parseInt(0,0000006) //6 Zusammenfassung der Gründe Jetzt habe ich den Grund gefunden. Es stellt sich heraus, dass sich die Form nach 10 hoch -6 in eine komplexe Zahl (6e-7) ändert. Verwenden Sie dann parseInt(), um die 6 in 6e-7 zurückzugeben, sodass der endgültig zurückgegebene Wert 6 ist. richtig Wenn Sie die Dezimalzahl sicher zurückgeben möchten, müssen Sie eine andere Methode verwenden! Math.floor(0,00006); //0 Math.floor(0,000006); //0 Math.floor(0,0000006); //0 Auf diese Weise erhalten Sie den gewünschten Wert. Zusammenfassen Dies ist das Ende dieses Artikels über das seltsame Verhalten von parseInt() in js. Weitere Informationen zu parseInt() in js finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Detaillierte Erklärung zur Verwendung von MySQL-Gruppenlinks
>>: Detaillierte Erläuterung der geplanten Aufgaben für normale Benutzer unter Linux
Dieser Artikel verwendet die Lizenzvereinbarung „...
Inhaltsverzeichnis MySql8.0 Fehler bei der Transa...
Nachdem Sie –subnet zum Erstellen des Docker-Netz...
Was ist ein Dateisystem Wir wissen, dass Speicher...
Ubuntu 18.04, andere Versionen von Ubuntu Frage: ...
1. Was ist ein zweispaltiges Layout? Es gibt zwei...
Inhaltsverzeichnis 1. Constraint-Konzepte und Kla...
Inhaltsverzeichnis Anforderungsbeschreibung Probl...
1. Einleitung Mit Imagemaps können Sie Bereiche e...
MySQL hatte zuvor einen Abfragecache, Query Cache...
Hintergrund Als ich heute mit anderen Projektteam...
Inhaltsverzeichnis Warum wird addEventListener be...
Verwandte Artikel: Website-Design für Benutzererfa...
In diesem Artikel wird der spezifische JavaScript...
Ein nahtloses Karussell ist ein sehr häufiger Eff...