Verschiedene Datentypen

In JavaScript gibt es verschiedene Datentypen, die sich in 2 Gruppen einteilen lassen.

Die erste Gruppe besteht aus den "primitiven Datentypen" und wird durch Zahlen, Zeichenketten und booleschen Wahrheitswerten repräsentiert. Die zweite Gruppe ist der Datentyp "Object", welcher aus einer Sammlung verschiedener Werte und Funktionen gebildet wird. Bei der Deklaration von Variablen wird in JavaScript nicht explizit der Datentyp festgelegt. Es gibt Sprachen, in denen es normal ist bei einer Variablendeklaration den Datentyp mit anzugeben. Genau diese Eigenschaft führt bei unachtsamer Programmierung womöglich zu Fehlern.


Number / Zahlen

Zahlen werden in der Programmierung genau wie im echten Leben zum Rechnen verwendet, zudem werden sie in der Programmierung auch verwendet, um damit Wertebereiche zu definieren oder Mengenangaben festzulegen.

Mit Zahlen können auch Animationsgeschwindigkeiten bestimmt werden. Die Zahlen können positive Werte annehmen wie die normalen Zahlen "7" oder "45". Aber auch negative Werte können verwendet werden, indem einfach das Minus vorangestellt wird ("-7").

Achtung!

Die Kommazahlen werden nicht wie in der deutschen Sprache üblich mit dem Komma geschrieben, sondern mit dem Punkt (0.5).

Der Gültigkeitsbereich von Zahlen in JavaScript ist begrenzt. Der kleinstmögliche und größtmögliche Wert kann ganz einfach abgerufen werden, indem wir in der Konsole den jeweiligen Wert des Objekts Number abfragen.

Minimaler und maximaler Wert in JavaScript

console.log(Number.MIN_VALUE);
console.log(Number.MAX_VALUE);
Minimaler und Maximaler Wert

Wenn Berechnungen aus irgendeinem Grund keinen gültigen Zahlenwert zurückgeben, dann bekommen wir den Wert "NAN" zurück. "NAN" ist die englische Abkürzung für "Not a number", also keine Nummer.


String / Zeichenketten

Die Strings oder Zeichenketten beschreiben in der Programmierung eine Aneinanderkettung von Zeichen als Wort, Sonderzeichen oder auch Zahlen.

Zeichenketten werden verwendet, wenn normaler Text zum Einsatz kommt, egal ob es eine Formulareingabe oder eine Hinweismeldung ist. Eine Zeichenkette wird mit einfachen oder doppelten Anführungszeichen definiert, es ist fast egal, welche Anführungszeichen wir verwenden. Wichtig ist nur, dass wir uns für das einfache oder das Doppelte entscheiden, denn eine Mischung aus beiden ist ungültig und erzeugt einen Syntaxfehler.

Einfache oder doppelte Anführungszeichen

let vorname = "Manuel";
let vorname = 'Manuel';

Wenn der Sonderfall eintrifft, in dem wir Anführungszeichen innerhalb einer Zeichenkette benötigen, so können wir die entsprechenden Gegenmaßnahmen einleiten und dem Interpreter zu verstehen geben, wie er unsere Zeichenkette behandeln soll. Auch die Groß- und Kleinschreibung spielt bei den Variablen eine Rolle. Wenn unsere Zeichenkette mit doppelten Anführungszeichen beginnt, dann behandelt der Interpreter die einfachen Anführungszeichen als ganz normale Zeichen, die zum Text gehören, bis er auf die doppelten Anführungszeichen am Ende trifft.

Gemischte Anführungszeichen

let sternzeichen = "Ihr Sternzeichen ist: 'Wassermann'";
vermischte Anführungszeichen

Wenn wir die einfachen und die doppelten Anführungszeichen tauschen, dann erhalten wir exakt dasselbe Ergebnis. Nur eben mit getauschten Anführungszeichen.


Boolean / Boolesche Werte

Boolesche Werte sind sehr einfach zu verstehen.

Es gibt exakt 2 gültige Werte, wahr oder falsch. Oder in der Programmiersprache ausgedrückt, "true" und "false". Sie werden verwendet, wenn einfache Abfragen mit "ja" oder "nein" beantwortet werden können. Zum Beispiel bei der Abfrage von Checkboxen eines Formulars. Wenn die Checkbox bestätigt wurde, dann ist der Wert "true", ansonsten ist der Wert "false".


Specials / Besondere Datentypen

Der erste besondere Datentyp heißt undefined

Wenn wir eine Variable Deklarieren, aber noch keinen Wert zugewiesen haben, dann hat die Variable den Wert undefined.


Damit kommen wir auch zu dem zweiten besonderen Datentyp (NULL). Der Datentyp Null steht für ein leeres Objekt.


Seit ES2015 gibt es noch den Datentyp symbol. Der Datentyp symbol wird hauptsächlich für die Kennzeichnung von Objekteigenschaften verwendet.


Unterschied zwischen Datentypen und Referenztypen

In JavaScript wird noch mal zwischen Datentyp und Referenztyp unterschieden, der Unterschied liegt darin, wie die Daten gespeichert werden.

Datentypen

Folgendes Beispiel

Deklaration von Datentypen

let a = 1;

Bei der Deklaration speichert der Computer die Variable "a" und hinterlegt ihr den Wert "1" an einen dafür vorgesehenen Speicherort.

Bei der nachfolgenden Deklaration wird der Variable "b" der Wert von "a" also "1" zugewiesen. Der Computer kopiert den Wert in das entsprechende Register.

Deklaration von Datentypen

let b = a;

Referenztypen

Bei Referenztypen speichert der Computer nicht den Wert wie bei den Datentypen, sondern nur eine Referenz, die auf den entsprechenden Wert zeigt.

Als Beispiel nehmen wir ein Auto.

Objekt erstellen

let auto = {
 marke: 'VW',
 typ: 'Golf'
};

Die Variable "auto" wird jetzt mit einem Objekt als Referenztyp initialisiert. Das Objekt selber besteht aus mehreren Datentypen, jedoch speichert die Variable "auto" nicht die Datentypen im Register, sondern nur eine Referenz zum Objekt.

Wenn wir jetzt die folgende Variable definieren:

Referenz auf Objekt

let auto1 = auto;

Dann haben wir eine zweite Referenz erstellt, die auf dasselbe Objekt verweist. Also "auto" und "auto1" zeigen auf dasselbe Objekt im Register. Hierbei ist darauf zu achten, dass die Veränderung an einem Objekt Auswirkungen auf alle Variablen hat, die auf dieses Objekt zeigen.


Weiter mit Arrays