Kurz: Jeder Wert in JavaScript hat einen Typ. Es gibt sieben einfache (primitive) Typen und den Typ Objekt.
Teil des Kurses JavaScript
Kapitel 4 von 40 im Kurs JavaScript. Mit Fortschritt, Quiz und Zertifikat auf der Lernseite.
Jeder Wert in JavaScript hat einen Typ. Es gibt sieben einfache (primitive) Typen und den Typ Objekt.
| Typ | Beispiel | Bedeutung |
|---|---|---|
number | 42, 3.14 | alle Zahlen (ganz und Komma) |
bigint | 12345678901234567890n | beliebig große ganze Zahlen |
string | "Hallo" | Text |
boolean | true, false | Wahrheitswert |
undefined | undefined | ”kein Wert zugewiesen” |
null | null | ”bewusst leer” |
symbol | Symbol("id") | eindeutiger Bezeichner |
object | {}, [] | Objekte, Arrays, Funktionen |
typeof
Mit typeof fragst du den Typ ab:
console.log(typeof 42);
console.log(typeof 3.14);
console.log(typeof "Text");
console.log(typeof true);
console.log(typeof undefined);
console.log(typeof null); // Historischer Fehler: "object"
console.log(typeof [1, 2]); // Arrays sind Objekte
console.log(typeof {a: 1});
console.log(typeof function () {});
console.log(typeof 10n);Ausgabe:
number
number
string
boolean
undefined
object
object
object
function
bigintHinweis
typeof nullergibt"object": ein Fehler aus den Anfangstagen, der aus Kompatibilitätsgründen bleibt. Ein Array erkennst du mitArray.isArray().
Umwandlung (Typkonvertierung)
console.log(Number("42")); // 42
console.log(Number("abc")); // NaN
console.log(parseInt("12px")); // 12
console.log(parseFloat("3.5kg"));// 3.5
console.log(String(123)); // "123"
console.log((255).toString(16)); // "ff"
console.log(Boolean(""), Boolean("a"), Boolean(0), Boolean(5));Ausgabe:
42
NaN
12
3.5
123
ff
false true false trueTruthy und Falsy
In Bedingungen werden Werte als wahr oder falsch gewertet. Falsy sind genau: false, 0, -0, 0n, "", null, undefined und NaN. Alles andere ist truthy, auch "0", [] und {}.
const werte = [0, "", "0", [], {}, null, undefined, NaN, "text", -1];
for (const w of werte) {
console.log(JSON.stringify(w), w ? "truthy" : "falsy");
}Ausgabe:
0 falsy
"" falsy
"0" truthy
[] truthy
{} truthy
null falsy
undefined falsy
null falsy
"text" truthy
-1 truthyAutomatische Umwandlung
Bei Operatoren wandelt JavaScript Typen oft von selbst um. Das ist bequem, aber tückisch:
console.log("5" + 3); // "53": + verbindet Text
console.log("5" - 3); // 2: - rechnet
console.log("5" * "2"); // 10
console.log(true + 1); // 2
console.log([] + []); // ""Ausgabe:
53
2
10
2
Merke
- Primitive Typen: number, bigint, string, boolean, undefined, null, symbol
typeofliefert den Typ;typeof nullist"object"- Falsy sind: false, 0, "", null, undefined, NaN (und -0, 0n)
Number(),String(),Boolean()wandeln explizit um"5" + 3ergibt"53","5" - 3ergibt2
Übungsaufgabe
Prüfe mit typeof die Typen von "7", 7, [7] und null. Wandle "7" mit Number in eine Zahl um und addiere 3.
Quiz zur Selbstkontrolle
Was ergibt typeof null?
- “object” (richtig)
- “null”
- “undefined”
- “number”
Was ergibt "5" + 3?
- “53” (richtig)
- 8
- 2
- NaN
Welcher Wert ist falsy?
- 0 (richtig)
- “0”
- []
- {}
Weiter im Kurs
Zurück: Variablen: let, const und var
Weiter: Zahlen und das Math-Objekt
Alle Kapitel: JavaScript im Überblick