Heim > Web-Frontend > js-Tutorial > Wann und warum müssen Sie „this' verwenden? in JavaScript-Objektvariablen?

Wann und warum müssen Sie „this' verwenden? in JavaScript-Objektvariablen?

Linda Hamilton
Freigeben: 2024-12-31 08:38:17
Original
274 Leute haben es durchsucht

When and Why Do You Need to Use

Verwenden Sie „dies.“ in Javascript-Objektvariablen

Im Gegensatz zu C muss Variablen in Javascript explizit das Präfix „this“ vorangestellt werden. um sich auf das Objekt zu beziehen, zu dem sie gehören. Dies ist ein wesentlicher Unterschied in der objektorientierten Programmierung zwischen den beiden Sprachen.

Das Schlüsselwort „this“ in Javascript stellt den aktuellen Kontext dar, also das Objekt, für das die Funktion aufgerufen wird. Wenn Sie eine Variable ohne „this.“ deklarieren, wird sie zu einer lokalen Variablen innerhalb dieses Funktionsbereichs. Um innerhalb einer Funktion auf eine Eigenschaft des Objekts zuzugreifen, müssen Sie „this“ verwenden. gefolgt vom Eigenschaftsnamen.

Betrachten Sie den folgenden Code:

function foo() {
    bar = 0; // This creates a local variable
    this.getBar = function() { return bar; } // This creates a privileged method
}
Nach dem Login kopieren

In diesem Code ist „bar“ eine lokale Variable innerhalb der „foo“-Funktion, während „getBar“ eine ist privilegierte Methode, die Zugriff auf die lokale Variable hat. Ohne die Verwendung von „this.“ wäre „getBar“ nicht in der Lage, auf „bar“ zuzugreifen.

Dieser Ansatz der Verwendung von „this.“ ist für alle Variablen erforderlich, auf die Sie innerhalb von Objektmethoden zugreifen möchten. Mit Javascript können Sie jedoch Methoden für das Prototypobjekt anstelle von Instanzobjekten definieren. Auf dem Prototyp definierte Methoden werden von allen Instanzen dieses Objekts geerbt. In diesem Fall können Sie die Verwendung von „this“ vermeiden. für diese Methoden. Hier ist ein Beispiel:

function Foo() {
    this.bar = 0;
}
Foo.prototype.getBar = function() { return this.bar; }
Nach dem Login kopieren

In diesem Code ist „getBar“ im Prototyp definiert, sodass Instanzen von „Foo“ diese Methode erben und auf „bar“ zugreifen können, ohne „this“ voranzustellen.

Kurz gesagt, verwenden Sie „dies“. ist wichtig für den Zugriff auf Objekteigenschaften innerhalb von Funktionen/Methoden, die in Instanzobjekten definiert sind. Dies kann jedoch vermieden werden, indem stattdessen Methoden auf dem Prototyp definiert werden.

Das obige ist der detaillierte Inhalt vonWann und warum müssen Sie „this' verwenden? in JavaScript-Objektvariablen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage