Für jedes JavaScript -Programm initialisiert das JavaScript -Interpreter, wenn das Programm ausgeführt wird, ein globales Objekt für das Programm. Zu den Funktionen globaler Objekte, die dieses JavaScript selbst bereitstellen, gehören:
1. Das globale Objekt hat einige häufig verwendete Eigenschaftswerte. Wie undefined, Infinity und Nan.
2. Das globale Objekt hat einige häufig verwendete Attributobjekte. Beispielsweise sind Mathematik-, JSON- und Zahlenobjekte alle Eigenschaften des globalen Objekts.
3. Das globale Objekt bietet einige globale Funktionen für den Anruf. Zum Beispiel isnan (), isfinite (), parseInt () und eval () usw.
4. Das globale Objekt liefert einige globale Konstruktoren, dh globale Klassen. Zum Beispiel date (), regexp (), string (), Object () und array ().
Zusätzlich zu JS Global Objects gibt es ein weiteres globales Objekt für JavaScript -Programme auf der Browser -Seite: Fenster. Das globale Fensterobjekt bietet viele Attribute und Methoden, die sich auf das aktuelle Fenster und die aktuelle Seite beziehen. Zusätzlich zu diesen browserbezogenen globalen Eigenschaften und Methoden fasst das Fensterobjekt JS globale Objekte zusammen und enthüllt die Eigenschaften und Schnittstellen von JS-globalen Objekten nach außen. Bei der Durchführung von Browser-Seite-JavaScript-Programmierungen müssen Sie sich daher nur um die globalen Fensterobjekte kümmern.
In einem JavaScript -Programm bezieht sich dies in einem JavaScript -Programm, wenn dies nicht zu einer Funktion gehört, dies auf das globale JS -Objekt. Wenn es sich um ein JS -Programm handelt, das im Browser ausgeführt wird, bezieht sich dies auf das globale Fensterobjekt.
Wenn dies zu einer Funktion gehört, bezieht sich dies auf das Objekt, das die Funktion aufruft. Wenn die Funktion in diesem Fall nur eine gewöhnliche Funktion ist, keine Methode einer bestimmten Klasse, gibt es für diese Referenz zwei Möglichkeiten:
1. Im Rahmen des nicht-strengen Modus des ECMAScript 3-Standards und des ECMAScript 5-Standards bezieht sich dies auf das globale Objekt.
2. Unter dem strengen Modus des ECMascript 5 -Standards bezieht sich dies auf undefinierte.
Basierend auf dieser Funktion können Sie den folgenden Code verwenden, um festzustellen, ob Sie sich derzeit im strengen Modus befinden:
Die Codekopie lautet wie folgt:
var strict = (function () {return! this;} ());
Wenn eine globale Variable in einem JavaScript -Programm erstellt wird, wird diese globale Variable zu einer Eigenschaft im globalen Objekt.
Experiment
Die Codekopie lautet wie folgt:
var a = this;
console.log (a); // Fensterobjekt
console.log (A.Outerwidth); // Zugriff auf Fensterobjekte des Fensters zugreifen
console.log (a.isnan); // Zugriff auf JS Global Object des Attributs des globalen Objekts
x = "test";
Console.log (AX); // Zugriff auf den neu erstellten globalen variablen Wert zugreifen