Heim  >  Artikel  >  Web-Frontend  >  Das Verständnis davon in js

Das Verständnis davon in js

一个新手
一个新手Original
2017-10-11 09:48:041737Durchsuche

Vorwort: Dieses Objekt funktioniert nur, wenn der strikte Modus nicht verwendet wird. Dieses Objekt ist zur Laufzeit an die Ausführungsumgebung der Funktion gebunden.

Fall 1: In einer globalen Funktion ist dies gleich dem Fenster. Nur wenn die Funktion als Methode eines Objekts aufgerufen wird, ist dies gleich diesem Objekt. Wenn Sie immer noch nicht wissen, was eine globale Funktion ist, lesen Sie bitte hier nach und klicken Sie, um den Link zu öffnen

Fall 2: Die Ausführungsumgebung der anonymen Funktion ist global, dies weist normalerweise darauf hin zum Fenster

Zum Beispiel

var name = "window";

var object = {
   name: "Object name",
   getNameFunc: function () {
        return function (){
            return this.name;
        };
    }
};
console.log(object.getNameFunc() ()); // 输出window

Fall 3: Speichern Sie das this-Objekt im externen Bereich in einer Variablen, auf die durch den Abschluss zugegriffen werden kann, damit this kann auf dieses Objekt im Gültigkeitsbereich zeigen

Zum Beispiel

var name = "window";

var object = {
   name: "Object name",
   getNameFunc: function () {
       var that = this;
        return function (){
            return that.name;
        };
    }
};
console.log(object.getNameFunc() ());  // 输出Object name

Fall 4: Weisen Sie zuerst die Funktion zu und führen Sie sie dann aus. Der Wert davon kann nicht sein gepflegt

Zum Beispiel

var name = "window";

var object = {
    name: "Object name",
    getName: function () {
        return this.name;
    }
};
console.log((object.getName = object.getName) ());  // 输出window

Fall 5: Wenn die Ausführungsumgebung der Funktion durch Aufruf oder Anwenden geändert wird, zeigt dies auf andere Objekte

Das obige ist der detaillierte Inhalt vonDas Verständnis davon in js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn