In JavaScript können Sie den String -Wert auf die folgenden drei Arten in eine Zahl konvertieren:
1. Anrufnummer (), um den Wertstyp der Zeichenfolge zu konvertieren.
2.ParseInt ().
3.Parsefloat ().
Nummer()
Die Verwendung der Funktion number () zum Gießen einer Zeichenfolge ist der unkomplizierteste Weg. Dieser Ansatz hat jedoch eine Einschränkung: Wenn die Zeichenfolge den Anfang abschneidet und die Whitespace -Zeichen beendet und keine reine numerische Zeichenfolge ist, ist das Endergebnis Nan. David Flanagans JavaScript Die definitive Handbuch 6. Ausgabe, Abschnitt 3.8.2, erwähnte, dass die Funktion bei Verwendung der Funktion number () zur Durchführung von String-Zahlen-Konvertierung nur Dezimalzustände akzeptiert. Die Testergebnisse zeigen jedoch, dass dies nicht der Fall ist. Die Number () -Funktion kann "0xff" als Parameter akzeptieren und in einen numerischen Wert von 255 umwandeln.
Die Codekopie lautet wie folgt:
var a = "42";
var b = "42 mm";
var c = "0xff";
var d = "42,34";
console.log (Nummer (a)); // 42
console.log (Nummer (b)); // nan
console.log (number (c)); // 255
console.log (number (d)); // 42.34
analysieren ()
Die ParseInt () -Funktion kann eine Zeichenfolge in eine Ganzzahl umwandeln. Im Vergleich zur Funktion nummer () kann die ParseInt () -Funktion nicht nur reine numerische Zeichenfolgen analysieren, sondern auch partielle numerische Zeichenfolgen beginnen, beginnend mit Zahlen (nicht digitale Teilzeichenfolgen werden während des Umwandlungsprozesses entfernt). Es ist erwähnenswert, dass die für die Rundung verwendete Methode, wenn die ParseinT () -Funktion eine schwimmende Punktzeichenfolge analysiert, "abgeschnitten" ist.
Zusätzlich zum String als erster Parameter kann die Funktion ParseInt () jede Ganzzahl zwischen 2 und 36 als zweiter Parameter akzeptieren, um die Anzahl der Abteilungen während des Konvertierungsprozesses anzugeben.
Die Codekopie lautet wie folgt:
var b = "42 mm";
var c = "0xff";
var x = "-12.34";
var y = "15,88";
var z = "101010";
console.log (parseInt (b)); // 42
console.log (parseInt (x)); //-12
console.log (parseInt (y)); // 15
console.log (parseInt (c)); // 255
console.log (parseInt (z, 2)); // 42
console.log (parseInt (". 1")); // nan
Parsefloat ()
Wie ParseInt () kann Parsefloat () auch partielle numerische Zeichenfolgen analysieren, beginnend mit Zahlen (nicht numerische teilweise Saiten werden während des Umwandlungsprozesses entfernt). Im Gegensatz zu ParseinT () kann Parsefloat () eine Saite in eine schwimmende Punktzahl umwandeln. Gleichzeitig akzeptiert Parsefloat () nur einen Parameter und kann nur Dezimalketten verarbeiten.
Die Codekopie lautet wie folgt:
var c = "0xff";
var d = "42,34";
console.log (parsefloat (c)); // 0, weil "0xff" mit 0 starten
console.log (parsefloat (d)); // 42.34
console.log (parsefloat (". 1")); // 0.1