Gelöst: Überprüfen Sie, ob die Zeichenfolge eine Zahl ist

Letzte Aktualisierung: 09/11/2023

Beim Programmieren in TypeScript geht es um den Umgang mit einer Vielzahl von Datentypen. Ein solcher Datentyp ist String. Bei der Arbeit mit Zeichenfolgen kann es jedoch manchmal erforderlich sein, festzustellen, ob der Zeichenfolgeninhalt eine Zahl ist. Dies ist in verschiedenen Programmiersituationen nützlich, in denen die Art der Daten vor der weiteren Verarbeitung beurteilt werden muss.

Die Prüfung, ob ein String eine Zahl ist, ist eine häufige Entwicklungsaufgabe in TypeScript. Sie stellt sicher, dass die Werte im String-Format tatsächlich Zahlen sind, bevor Operationen auf sie angewendet werden, die für numerische Werte vorgesehen sind. Der Versuch, numerische Operationen auf Strings durchzuführen, die keine Zahlen sind, führt zu unerwünschten Ergebnissen oder unerwarteten Fehlern in Ihrer Anwendung.

Lösung für das Problem

Der übliche Weg, dies in TypeScript zu tun, ist die Verwendung der integrierten Funktionen parseInt und isNaN.

function isStringNumber(str: string): boolean {
    const num = parseInt(str, 10);
    return !isNaN(num);
}

Im obigen Code versucht die Funktion „parseInt“, die Zeichenfolge in eine Zahl umzuwandeln. Wenn dies fehlschlägt, wird „NaN“ zurückgegeben. Anschließend prüfen wir mit der Funktion „isNaN“, ob das Ergebnis „NaN“ ist. Wenn es „NaN“ ist, gibt die Funktion „false“ zurück, andernfalls „true“.

Den Kodex erklären

Zunächst akzeptiert die Funktion „isStringNumber()“ einen String als Parameter. Die Funktion „parseInt()“ versucht, diese Zeichenfolge zu analysieren und in eine Ganzzahl umzuwandeln. Es benötigt zwei Parameter – den zu analysierenden String und die Basis oder Basis, in die der String konvertiert werden soll. In diesem Fall ist 10 die Basis, die eine Dezimalzahl impliziert.

Die Funktion „parseInt“ liefert eine numerische Ausgabe, wenn die Zeichenfolge tatsächlich eine Zahl ist, andernfalls „NaN“, was für „Keine Zahl“ steht.

Die Funktion „isNaN“ prüft, ob das Ergebnis der Funktion „parseInt“ „NaN“ ist. Wenn das Ergebnis eine Zahl ist, würde „isNaN“ „false“ zurückgeben und „true“, wenn das Ergebnis „NaN“ ist.

Schließlich kehren wir mit der Operation „!“ den booleschen Wert der Funktion „isNaN()“ um. Wenn die Zeichenfolge eine Zahl ist, würde „isNaN(num)“ „false“ zurückgeben, um sie auf „true“ zu setzen. Wir verwenden die Operation „!“. .

Verwandte beliebte Bibliotheken für Bedingungen und Validierung

Zu den beliebten JavaScript- und TypeScript-Bibliotheken für Validierungen gehören Validator.js und Joi . Diese Bibliotheken bieten umfangreiche Funktionen zur Validierung verschiedener Datentypen, unter anderem zur Prüfung, ob eine Zeichenkette eine Zahl ist.

Validator bietet eine Sammlung von String-Validatoren und Sanitizern, während Joi eine komplexere und robustere Schemabeschreibung und einen Datenvalidator bietet.

Das Verständnis und die Verwaltung von Datentypen sind ein grundlegendes Konzept jeder Programmiersprache. In TypeScript bieten diese Funktionen und Techniken die Möglichkeit, die korrekte Datentypbehandlung sicherzustellen und dadurch die Effizienz Ihrer Programme zu steigern.

Zusammenhängende Posts: