Konvertieren einer Zeichenkette in eine Zahl in JavaScript
-
Verwenden Sie die Funktion
Number()
, um eine Zeichenkette in JavaScript in eine Zahl zu konvertieren -
Verwenden der Funktion
parseInt()
zum Konvertieren einer Zeichenkette in eine Ganzzahl in JavaScript -
Verwenden Sie das Objekt
Math
, um einen String in JavaScript in Integer zu konvertieren - Fazit
Wir müssen verschiedene Szenarien gehabt haben, um eine Zahl umzuwandeln. Zum Beispiel die Daten, die von einer API oder einer Datenbankabfrage in einem Zeichenkettenformat an eine Zahl abgerufen werden. Da Zeichenketten unterschiedlich bearbeitet werden, kann es erforderlich sein, diese Zeichenketten in ein Zahlenformat zu konvertieren, um mühelos arithmetische Operationen an ihnen ausführen zu können. Hier einige Möglichkeiten:
Number("123")
parseInt("123")
Math.floor("123.12")
Math.round("123")
Verwenden Sie die Funktion Number()
, um eine Zeichenkette in JavaScript in eine Zahl zu konvertieren
Die Number()
ist eine Funktion des Konstrukts Number
, mit der andere Datentypen in ein Zahlenformat konvertiert werden können (gemäß MDN Docs). Es gibt NaN
zurück, wenn der Eingabeparameter entweder undefiniert oder nicht in eine Zahl konvertierbar ist. Beispielsweise:
console.log(Number('246'))
console.log(Number('246.5'))
console.log(Number(undefined))
console.log(Number('Hello'))
Ausgabe:
246
246.5
NaN
NaN
Verwenden der Funktion parseInt()
zum Konvertieren einer Zeichenkette in eine Ganzzahl in JavaScript
Eine andere Möglichkeit, mit Zeichenkettenummern umzugehen, ist die Verwendung der Methode parseInt()
von JavaScript. parseInt()
akzeptiert zwei Argumente, eines ist die Zeichenkette, die konvertiert werden muss, und das andere ist die radix
(bedeutet die Basis). Die meisten Zahlen, mit denen wir uns in unserem täglichen Leben beschäftigen, liegen normalerweise auf der Basis von 10, was einen Dezimalwert bedeutet. In den meisten Fällen müssen wir den Radix nicht angeben, da der Standardwert 10 ist.
console.log(parseInt('123'));
console.log(parseInt('abc'));
console.log(parseInt('-123'));
console.log(parseInt('100.50'));
Ausgabe:
123
NaN
-123
100
parseInt("100.50")
gibt 100 statt 100.50 zurück, da die Eingabenummer in eine Ganzzahl konvertiert wird. Beachten Sie daher bei der Verwendung von parseInt()
die Tatsache.
parseInt()
kann auch hexadezimale Werte und Werte mit den verschiedenen Basisnummernsystemen wie dem Binärsystem, dem Oktalsystem usw. konvertieren. Weitere Informationen finden Sie in den Dokumenten. In ähnlicher Weise können wir parseFloat()
verwenden, um eine Zeichenkette in eine Gleitkommazahl zu konvertieren.
Verwenden Sie das Objekt Math
, um einen String in JavaScript in Integer zu konvertieren
Math
ist ein in JavaScript integriertes Objekt, das Methoden für komplexe mathematische Operationen enthält. Es funktioniert mit der Datentypnummer. Es werden jedoch nur wenige Methoden dieses eingebauten Objekts verwendet, um die Zeichenkette in eine Ganzzahl zu konvertieren. Beispielsweise,
console.log(Math.ceil('123'));
console.log(Math.floor('300'));
console.log(Math.abs('450'));
Ausgabe:
123
300
450
Es gibt jedoch eine Gefahr, wenn die Konvertierungsmethoden Math
verwendet werden. Für Gleitkommawerte können wir sie nicht verwenden, da sie diese in eine Ganzzahl konvertieren. Daher verlieren wir den Dezimalteil des Wertes.
Math.ceil("220.5")
: gibt221
zurück. Es nimmt den Höchstwert an und approximiert die Dezimalzahl mit dem nächsten ganzzahligen Wert, der221
ist. Daher können wir es nicht verwenden, um220.5
zu erhalten. Verwenden Sie in solchen SzenarienparseFloat()
.Math.floor("220.5")
: gibt220
zurück. Im Vergleich zur Funktionceil()
gibtfloor()
den vorherigen ganzzahligen Wert zurück. Daher würdeMath.floor()
für Gleitkommazahlenwerte nicht funktionieren.Math.abs("450")
: Kann verwendet werden, da es450
zurückgibt, aber mit negativen ganzzahligen Werten nicht funktioniert. Zum Beispiel wird der folgende Unterschied unseren Zweck nicht erfüllen, wenn es sich um negative ganzzahlige Werte handelt. Gemäß den folgenden Szenarien:
console.log(Maths.abs('240.64'))
console.log(Math.abs('-240.25'))
Ausgabe:
240.64 // The decimal value of .64 is captured here
240.25 // -240.25 is transformed to 240.25
Fazit
Abhängig von dem Wert, den wir von der Zeichenkettennummer erwarten, ist die beste Option die Verwendung der Methode Number()
. Wenn Sie nur mit ganzzahligen Werten spielen, empfehlen wir die Verwendung von parseInt()
. Verwenden Sie das in JavaScript integrierte Math-Objekt mit Bedacht, um eine Zeichenkettennummer zu konvertieren, da dies aufgrund der von uns verwendeten Methode schwierig sein kann.
Verwandter Artikel - JavaScript String
- Letztes Zeichen einer Zeichenkette in JavaScript abrufen
- Eine Zeichenkette in ein Datum in JavaScript umwandeln
- Erstes Zeichen aus einer Zeichenkette in JavaScript abrufen
- Konvertieren ein Array in einen String in JavaScript
- String-Gleichheit in JavaScript prüfen
- Anagramm-Finder in JavaScript