Unterverzeichnisse in JavaScript
Als Wert eines Ausdrucks kommt nicht nur eine Zahl oder ein Text, sondern auch ein Verzeichnis in Frage.
Der Wert des echten Eintragsausdrucks »this.Math« ist beispielsweise seinerseits wiederum ein Verzeichnis.
Ein Verzeichnis kann Werte enthalten, und ein Verzeichnis ist auch selber als ein Wert, daher kann ein Verzeichnis auch ein Verzeichnis enthalten.
»this.Math« ist ein Verzeichnis, das im Verzeichnis »this« enthalten ist.
Wir können dann eine Zahl erhalten, indem wir einen Bezeichnernamen aus dem Verzeichnis »this.Math« verwenden, wie beispielsweise den Namen »PI«.
- Auswertung
this.Math.PI
3.141592653589793
Einen Ausdruck, der mehrere Punkte enthält, nennt man manchmal auch eine Pfad, weil man dabei „durch mehrere Verzeichnisse geht“ wie auf einem Pfad. Zur Vereinfachung kann man dann aber auch Namen mit weniger Punkten zu den Pfaden zählen.
- Beispiele für Pfade
this
this.Math
this.Math.PI
»Math« ist ein globaler Name, »PI« jedoch nicht. Da die Voranstellung von »this.« vor globalen Namen in diesem Teil des Kurses auch entfallen kann, ist es möglich, an Stelle von »this.Math.PI« auch einfach nur »Math.PI« zu schreiben.
Man kann aber nicht einfach nur »PI« als Ausdruck verwenden, da nur Namen, welche direkt im globalen Verzeichnis »this« eingetragen sind, in einigen Fällen auch ohne vorangestelltes »this.« verwendet werden können.
- Dialog
PI
ReferenceError: PI is not defined
Wir nennen ein Verzeichnis, welches seinerseits in einem Verzeichnisses eingetragen ist, auch ein Unterverzeichnis.
- Echter Eintragsausdruck
Ausdruck
.------------. .-. .----------------.
---.---| Bezeichner |---.---.--->( . )--->| Bezeichnername |---.--->
| '------------' ^ ^ '-' '----------------' |
| .----. | '----------------------------------'
'----->( this )------'
'----'
Übersicht
In der folgenden Übersicht steht »this« für das globale Verzeichnis.
- Übersicht der Namen
Name Art Bedeutung
this.Infinity Zahl Unendlich
this.Math.PI Zahl die Kreiszahl Pi
Übungsfragen
? Übungsfrage
Welchen Wert hat der Ausdruck »this.Math.E«?
? Übungsfrage
Welchen Wert hat der Name »this.Number.MAX_SAFE_INTEGER«?
(Dieser Name fehlt bei älteren JavaScript -Implementationen.)
? Übungsfrage
Was für ein Wert ist »this«?
- Zahl
- Zeichenfolge
- Verzeichnis
? Übungsfrage
Was für ein Wert ist »this.Math«?
- Zahl
- Zeichenfolge
- Verzeichnis
? Übungsfrage
Was für ein Wert ist »this.Math.PI«?
- Zahl
- Zeichenfolge
- Verzeichnis
? Ausdrücke
Welcher der folgenden Quelltexte ist ein Ausdruck?
- »this.Math«
- »this.Math.PI«
? Eintragsausdrücke
Welche der folgenden Ausdrücke sind Eintragsausdrücke?
- »this.Math.PI«
- »this.Infinity«
- »Infinity«
- »3.141592653589793«
? Lexikalische Einheiten ⃗
Wie viele lexikalische Einheiten umfassen die folgenden Ausdrücke jeweils?
- »this.Math.PI«
- »this.Infinity«
- »Infinity«
- »3.141592653589793«