Heim  >  Artikel  >  Web-Frontend  >  Eine kurze Einführung in die parseInt-Funktion in js

Eine kurze Einführung in die parseInt-Funktion in js

怪我咯
怪我咯Original
2017-07-04 15:21:112199Durchsuche

In diesem Artikel wird die Funktion parseInt in Js vorgestellt. Freunde in Not können auf

aus sehr beliebten Beispielen zurückgreifen. Apropos parseInt( „09“)==0.

parseInt(number,type) Wenn dieser Funktion nicht der zweite Parameter zur Darstellung der Basis folgt, ist der Standardwert dezimal.
Zum Beispiel ist parseInt("010",10) das dezimale Ergebnis: 10,
parseInt("010",2) ist das binäre Ergebnis: 2,
parseInt("010",8) ist das Ergebnis des Oktalsystems: 8,
parseInt("010",16) ist das Ergebnis des Binärsystems: 16.

Lassen Sie mich weiter unten darauf eingehen. Wenn die Basiseinheit nicht angegeben ist, gilt: Wenn die darin enthaltene Zahl mit 0 beginnt, gilt sie als oktal gilt als oktal. Ich denke, es ist hexadezimal.

parseInt("10")==>parseInt("010",10)===>10parseInt("010")==>parseInt("010",8)==>8parseInt( "0x10")==>parseInt("010",16)==>16.

Hier lief es reibungslos.

Viele Dinge laufen nicht so reibungslos, wie wir dachten, zum Beispiel wenn Die Zahl ist nicht wir. Wie erklären Sie sich die normalen Zahlenangaben? Nachdem wir einige Informationen überprüft haben, heißt es:
parseInt(Number) Wenn die Zahl in der Mitte auf etwas trifft, das keine Zahl ist (0-9), wird die Analyse unterbrochen und nur der Wert davor Für die Berechnung wird keine Zahl verwendet: etwa parseInt ("100x"), was parseInt("100")===》parseInt("100",10)==>100 und parseInt(" entspricht. 0100x")===>parseInt("0100 ")===>parseInt("100",8)===>64.
Eine Sache, die wir hier anscheinend ignoriert haben, ist, dass es eine gibt x ​​im Hexadezimalformat. Ist es eine Begegnung? Auch x wurde ignoriert. Ich habe es ausprobiert und festgestellt, dass nach dieser speziellen Verarbeitung
Zum Beispiel parseInt("0x10")===>parseInt("10",16)===>16 mit dem Top-Ergebnis übereinstimmt, aber Es stimmt mit dem Top-Ergebnis überein, was ich gerade gesagt habe: Wenn Zeichen nicht automatisch analysiert werden, sollte es als parseInt("0") verstanden werden, was gegen die Regeln verstößt.

Hier müssen Sie aufpassen. Die Zahl in parseInt ist wie folgt: Wenn die erste Zahl nicht 0 ist und kein Zeichen ist, wird alles wie gewohnt ausgeführt stoppt, wenn ein Buchstabe gefunden wird. Und wenn die erste 0 ist, müssen Sie auf die folgende achten. Wenn dies der Fall ist, befolgen Sie einfach die oben genannten Regeln, um das Parsen zu stoppen, wenn Sie auf Nicht-Ziffern stoßen. Beispielsweise ist parseInt("0xt")==>parseInt("0x")==>parseInt("",16) NaN.

Um den Wert in parseInt(Number) zusammenzufassen: Wenn die erste Ziffer nicht 0 ist, wird die Analyse beendet, wenn ein Buchstabe gefunden wird, und der Wert vor dem Buchstaben wird als Dezimalzahl analysiert Die erste Ziffer ist Der Wert eines Buchstabens ist leer und der leere Wert wird NaN,

Zum Beispiel: parseInt("a")==>parseInt("",10)==>NaN.parseInt(" 10a")==>parseInt ("10")==>parseInt("10",10)==>10;
Wenn die erste Ziffer 0 und die zweite Ziffer nicht x ist, wird dies der Fall sein Stoppen Sie die Analyse, wenn ein Buchstabe wie oben gefunden wird, und analysieren Sie den Wert vor dem Buchstaben als Oktalwert, zum Beispiel: parseInt("0a")==>parseInt("0")==>parseInt("0" ,10)==>0.PS: Das ist etwas Besonderes, da 0a in 0 analysiert wird und nicht die Struktur hat, die als Oktalsystem betrachtet werden muss. Das Folgende ist offensichtlich.
parseInt("010a")==>parseInt("010")==>parseInt("10",8)==>8;Wenn die erste Ziffer 0 und die zweite Ziffer x ist Dann Wie oben wird die Analyse beendet, wenn Buchstaben gefunden werden, und der Wert vor den Buchstaben wird als Hexadezimalwert analysiert, zum Beispiel: parseInt("0xt")==>parseInt("",16)==>NaN . parseInt("0x12t")==>parseInt("12",16)==>18.

Das obige ist der detaillierte Inhalt vonEine kurze Einführung in die parseInt-Funktion in js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn