JavaScript-Code selbst muss in einem Objekt enthalten sein. Wenn Sie zum Beispiel JavaScript-Code für eine Webbrowser-Umgebung erstellen, wird JavaScript in der eingebettet und ausgeführt Fenster
Objekt. Diese Fenster
Objekt wird als "Kopfobjekt" betrachtet oder manchmal als "globales Objekt" verwirrend bezeichnet. Alle Implementierungen von JavaScript erfordern die Verwendung eines einzelnen Kopfobjekts.
Das Kopfobjekt wird von JavaScript hinter den Kulissen eingerichtet, um benutzerdefinierten Code zu kapseln und den systemeigenen Code aufzunehmen, mit dem JavaScript vorinstalliert ist. Benutzerdefinierter Code wird zur Ausführung von JavaScript im Kopfobjekt platziert. Lassen Sie uns dies überprüfen, da es sich um einen Webbrowser handelt.
Im folgenden Beispiel werden einige JavaScript-Werte erstellt und überprüft, ob die Werte im Kopf platziert sind Fenster
Objekt.
Beispiel: sample64.html
Sie sollten immer wissen, dass das Schreiben von JavaScript in den Kontext des Head-Objekts geschrieben wird. Für das verbleibende Material in diesem Kapitel wird davon ausgegangen, dass Sie wissen, dass der Begriff "Kopfobjekt" synonym für "globales Objekt" ist.
Das Kopfobjekt ist der höchste Gültigkeitsbereich / Kontext, der in einer JavaScript-Umgebung verfügbar ist.
JavaScript wird mit einigen vordefinierten Funktionen geliefert. Die folgenden systemeigenen Funktionen werden als Methoden des Kopfobjekts betrachtet (wie in einem Webbrowser), window.parseInt ('500')
). Sie können sich diese als fertige Funktionen und Methoden (des Kopfobjekts) vorstellen, die von JavaScript bereitgestellt werden.
decodeURI ()
decodeURIComponent ()
encodeURI ()
encodeURIComponent ()
eval ()
isFinite ()
isNaN ()
parseFloat ()
parseInt ()
Verwechseln Sie das Kopfobjekt nicht mit globalen Eigenschaften oder globalen Variablen, die im globalen Bereich enthalten sind. Das Kopfobjekt ist ein Objekt, das alle Objekte enthält. Der Begriff "globale Eigenschaften" oder "globale Variablen" bezieht sich auf Werte, die direkt im Kopfobjekt enthalten sind und nicht speziell auf andere Objekte beschränkt sind. Diese Werte werden als global betrachtet, da unabhängig von dem aktuell ausgeführten Code der gesamte Code (über die Gültigkeitsbereichskette) Zugriff auf diese globalen Eigenschaften und Variablen hat.
Im folgenden Beispiel stelle ich ein foo
Eigenschaft im globalen Bereich, und greifen Sie dann aus einem anderen Bereich auf diese Eigenschaft zu.
Beispiel: sample65.html
Hatte ich das platziert? foo
Eigenschaft außerhalb des globalen Bereichs, der console.log
Funktion würde zurückkehren nicht definiert
. Dies wird im nächsten Codebeispiel demonstriert.
Beispiel: sample66.html
In der Browserumgebung werden deshalb globale Eigenschaftsmethoden verwendet (z. B., window.alert ()
) kann aus jedem Bereich aufgerufen werden. Was Sie davon entfernen müssen, ist, dass alles im globalen Bereich für jeden Bereich verfügbar ist und daher den Titel "globale Variable" oder "globale Eigenschaft" erhält.
Es gibt einen kleinen Unterschied zwischen der Verwendung var
und nicht verwenden var
im globalen Bereich (globale Eigenschaften vs. globale Variablen). Sehen Sie sich diesen Stack Overflow-Austausch für die Details an: Unterschied zwischen der Verwendung von var und nicht der Verwendung von var in JavaScript.
Normalerweise gibt es zwei Möglichkeiten, auf das Kopfobjekt zu verweisen. Der erste Weg besteht darin, einfach den Namen des Head-Objekts anzugeben (wie dies in einem Webbrowser der Fall wäre) Fenster
). Der zweite Weg ist die Verwendung der diese
Stichwort im globalen Bereich. Jedes davon wird im folgenden Beispiel detailliert beschrieben.
Beispiel: sample67.html
In diesem Beispiel speichern wir explizit einen Verweis auf das Kopfobjekt in zwei Variablen, die dann verwendet werden, um auf das Globale zuzugreifen foo
Variable.
Normalerweise wird kein Verweis auf das Kopfobjekt verwendet, da es impliziert ist. Zum Beispiel in der Browserumgebung window.alert
und warnen()
sind im Wesentlichen die gleiche Aussage. JavaScript füllt hier die Lücken aus. Weil der Fenster
Objekt (das Kopfobjekt) ist das letzte in der Gültigkeitsbereichskette für einen Wert geprüfte Objekt, das Fenster
Objekt ist im Wesentlichen immer impliziert. Im nächsten Beispiel nutzen wir die warnen()
Funktion, die im globalen Gültigkeitsbereich enthalten ist.
Beispiel: sample68.html
Stellen Sie sicher, dass Sie verstehen, dass das Kopfobjekt impliziert ist, auch wenn Sie es nicht explizit einschließen, da das Kopfobjekt der letzte Stopp in der Gültigkeitsbereichskette ist.
Explizit sein (zum Beispiel, window.alert ()
vs. warnen()
) kostet etwas mehr in Bezug auf die Leistung (wie schnell der Code läuft). Dies ist schneller, wenn Sie sich nur auf die Gültigkeitsbereichskette verlassen und nicht explizit auf das Kopfobjekt verweisen, auch wenn Sie wissen, dass die gewünschte Eigenschaft im globalen Gültigkeitsbereich enthalten ist.