IT-Kurs JavaScript-Grundlagen 039_Typkonvertierung
Typkonvertierung ist der Prozess der Umwandlung eines Datentyps in einen anderen. Die Typkonvertierung kann implizit sein (automatisch von der JavaScript-Engine durchgeführt) oder explizit (manuelle Konvertierung durch Programmierung).
Implizite Typkonvertierung (Typerzwingung)
Bei einigen Operationen führt JavaScript automatisch eine Typkonvertierung durch, um Berechnungen oder Vergleiche durchzuführen.
Beispiel:
let num = 5 + "5";console.log(num); // Gibt "55" aus, Zahl und String addiert, Zahl wird in String konvertiertExplizite Typkonvertierung
String-Konvertierung
String() Funktion: Konvertiert andere Typen in Strings.
Beispiel:
let num = 123;let str1 = String(num); // String() Funktion, kann `null` oder `undefined` verarbeitenlet str2 = num.toString(); // toString() Methode, kann `null` oder `undefined` nicht verarbeitenlet str3 = num + ""; // Durch Addition mit leerem String, implizite Typkonvertierung zu Stringconsole.log(str1); // Gibt "123" ausconsole.log(str2); // Gibt "123" ausconsole.log(str3); // Gibt "123" ausZahlen-Konvertierung
Number() Funktion: Konvertiert andere Typen in Zahlen.
Beispiel:
let str1 = "123";let str2 = "";let str3 = "aaa";let num1 = Number(str1);let num2 = Number(str2);let num3 = Number(str3);let num4 = +str1;console.log(num1); // Gibt 123 ausconsole.log(num2); // Gibt 0 ausconsole.log(num3); // Gibt NaN ausconsole.log(num3); // Gibt 123 aus, bei Verwendung von - wird -123 ausgegebenHinweis: Wenn der String nicht als gültige Zahl geparst werden kann, ist das Ergebnis NaN (Not a Number).
parseInt() und parseFloat() Funktionen: Konvertieren Strings in Ganzzahlen oder Fließkommazahlen.
Beispiel:
let str = "42";let num = parseInt(str);console.log(num); // Gibt 42 aus
let str = "3.14";let num = parseFloat(str);console.log(num); // Gibt 3.14 ausBoolean-Konvertierung
Boolean() Funktion: Konvertiert andere Typen in Booleans.
Beispiel:
let value = "Hello";let bool1 = Boolean(value);let bool2 = !value;console.log(bool1); // Gibt true aus, nicht-leerer String wird in true konvertiertconsole.log(bool2); // Gibt true aus, logisches NOT bei Nicht-Boolean-Wert implizite Konvertierung (! Wert ist false, mit !! wird es wieder positiv)Hinweis: 0, NaN, null, undefined, leerer String usw. (leer, nicht vorhanden, fehlerhaft) werden in false konvertiert, andere Werte und Objekte werden in true konvertiert.