Übersicht: JS-Datentypen

JavaScript hat primitive Datentypen und Objekttypen.

  • Primitive: unveränderliche Werte
  • Objekte: komplexe, veränderbare Strukturen

Primitive Datentypen:

DatentypBeschreibungBeispielBemerkungen
NumberAlle Zahlen (Ganzzahlen und Fließkommazahlen)42, 3.14, NaN, InfinityNaN = Not a Number, Infinity für unendliche Werte
BigIntSehr große Ganzzahlen jenseits von Number.MAX_SAFE_INTEGER123456789012345678901234567890nEndet immer mit n
StringText / Zeichenketten"Hallo", 'World', `Template ${name}`Template Literals unterstützen Variablen-Einbettung
BooleanWahrheitswertetrue, falseHäufig für Bedingungen
UndefinedWert einer deklarierten, aber nicht initialisierten Variablenlet x; console.log(x)undefinedSignalisiert fehlende Initialisierung
NullAbsichtliches „kein Wert“let y = null;Typ ist object (historische Eigenart von JS)
SymbolEindeutiger, unveränderlicher IdentifierSymbol("id")Oft für Objekt-Eigenschaften, die nicht kollidieren sollen

Objekttypen:

TypBeschreibungBeispiel
ObjectAllgemeines Container-Objekt mit Schlüssel/Wert-Paarenlet obj = { name: "Alice", age: 25 };
ArrayGeordnete Liste von Wertenlet arr = [1, 2, 3];
FunctionCallable Objektefunction sum(a, b) { return a + b; }
DateDatum & Zeitlet now = new Date();
RegExpRegulärer Ausdruck/ab+c/i
MapSchlüssel-Wert Sammlung (beliebige Schlüsseltypen)let map = new Map(); map.set("a", 1);
SetSammlung einzigartiger Wertelet set = new Set([1,2,2]); // enthält nur 1,2
WeakMap / WeakSetWie Map/Set, aber Schlüssel sind weak referenceslet wm = new WeakMap();

Überprüfung/Bestimmung des Datentyps:

Operator / FunktionBeschreibungBeispiel
typeofPrüft primitiven Typtypeof 42"number"
instanceofPrüft, ob Objekt Instanz eines Konstruktors ist[] instanceof Arraytrue
Array.isArray()Prüft, ob ein Wert ein Array istArray.isArray([1,2])true