molily: JavaScript-Typologie

Beitrag lesen

Hallo,

Ich wollte wissen welche typen von variablen es gibt also ich kenne jetzt:

boolean
string
integer
array?

die gibt's im Prinzip alle nicht. Es gibt nur Konstanten (true, false, null, undefined - hab ich was vergessen?) und Objekte. Davon jedoch gibt es beliebig viele verschiedene. Einige davon haben Kurzschreibweisen, nämlich String() ("" oder ''), Array() ([]) und Object() ({}).

Mal langsam... Es gibt durchaus sogenannte primitive values. Die besagten Schlüsselwörter gehören dazu:

undefined ist der Wert, den der »primitive« Typ Undefined annehmen kann.
null ist der Wert, den der »primitive« Typ Null annehmen kann.

true und false sind die Werte, die der »primitive« Typ Boolean annehmen kann.

Weitere »primitive« Typen sind String und Number. Schreibe ich »"bla"« oder »12345«, erzeuge ich keine wirklichen Objects, sondern primitive values.
(NaN und Infinity sind übrigens vom Typ Number.)

Naja, und alles andere sind tatsächlich Objects.

Randnotiz 1: Es kann auch Number-, String- und Boolean-Objekte geben, nämlich durch die Schreibweise new Number(5), new String("bla") und new Boolean(false). Sie sind aber eher die Ausnahme und i.d.R. auch nicht erwünscht.

Randnotiz 2: Der typeof-Operator liefert beim Typ Null »object« und bei Funktionen (= Funktionsobjekten) »function«, ansonsten den Typnamen wie oben beschrieben.

Randnotiz 3: Was macht eigentlich Objekte aus? Objekte haben Identität, primitive values nicht.

Mathias