Details zum JavaScript-Abschluss

Details zum JavaScript-Abschluss

Vorwort:

Im JavaScript Teil sind Closures sehr wichtig, daher fassen wir heute das relevante Wissen zu Closures zusammen. Bevor wir Closures verstehen, müssen wir zunächst die relevanten Kenntnisse über den Umfang haben. Im vorherigen Blogbeitrag zum Umfang wurde dies erklärt, daher werde ich es hier nicht wiederholen. Schauen wir uns als Nächstes an, was ein Abschluss ist.

1. Was ist ein Abschluss?

closure ist eine Funktion, die Zugriff auf Variablen im Gültigkeitsbereich einer anderen Funktion hat. ----- Fortgeschrittene JavaScript Programmierung

Einfach ausgedrückt ist ein Abschluss eine Funktion mit folgenden Merkmalen : Ein Bereich kann auf die lokalen Variablen innerhalb einer anderen Funktion zugreifen.

Hier ist ein einfaches Beispiel:

Beispielsweise haben wir jetzt eine Funktion und definieren darin eine lokale Variable. Wenn andere Bereiche auf diese lokale Variable zugreifen können, wird ein Abschluss generiert. Daher definieren wir eine weitere Funktion innerhalb dieser Funktion, um zu sehen, ob der Funktionsumfang innerhalb der Funktion auf die lokalen Variablen in der äußeren Funktion zugreifen kann.

 Funktion f1(){
            varnum = 10;
            Funktion f2(){
                konsole.log(num);
            }
            f2();
        }
        f1();

Das ausgedruckte Ergebnis lautet:

Es kann festgestellt werden, dass der Wert erfolgreich ausgedruckt wurde, sodass ein Abschluss generiert wird.
Einige Leser haben jedoch möglicherweise Fragen: Die Funktion f2 selbst befindet sich innerhalb der Funktion f1 und kann die Variablen der übergeordneten Funktion verwenden. Dann greifen wir auf die Variable im Gültigkeitsbereich außerhalb der Funktion f1 zu und sehen, was das Ergebnis ist.

Wir ändern den Aufruf der Funktion f2 in den Rückgabewert der Funktion f1 und rufen dann die Funktion f1 außerhalb der Funktion wie folgt auf:

 Funktion f1(){
            varnum = 10;
            Funktion f2(){
                konsole.log(num);
            }
           return f2()
        }
        var f = f1();
        F();

An diesem Punkt ist es gleichbedeutend damit, dass der Bereich außerhalb von f1 auf die Variablen seiner internen Funktion zugreift. Das Druckergebnis ist:

Es lässt sich feststellen, dass die darin enthaltenen lokalen Variablen auch hier verwendet werden können und Abschlüsse generiert werden.

Wir können also Folgendes schlussfolgern:

Abschluss: Ein Bereich kann auf lokale Variablen innerhalb einer anderen Funktion zugreifen.

2. Die Rolle des Abschlusses

Wir wissen, dass die lokalen Variablen, die innerhalb einer Funktion definiert sind, nur innerhalb der Funktion verwendet werden können und zerstört werden, wenn wir sie nicht mehr verwenden. Mit Closures wird diese lokale Variable jedoch außerhalb der Funktion verwendet und erst zerstört, wenn ihr externer Aufrufer sie nicht mehr verwendet. Daher besteht die Rolle von Closures darin, den Gültigkeitsbereich der Variable zu erweitern.

Dies ist das Ende dieses Artikels über JavaScript-Closures. Weitere Informationen zu JavaScript-Closures finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Lassen Sie uns ausführlich über die Rolle von Closures in JS sprechen
  • Detaillierte Erklärung des Prinzips und der Funktion des JavaScript-Closures
  • Erweiterte Closures in JavaScript erklärt
  • JavaScript-Closures erklärt
  • Lassen Sie uns lernen, was Javascript-Closures sind

<<:  Html Select verwendet das ausgewählte Attribut, um die Standardauswahl festzulegen

>>:  Achten Sie beim Schreiben von Kurzeigenschaften in CSS auf die Reihenfolge der TRouBLe (um Fallstricke zu vermeiden).

Artikel empfehlen

37 Tipps für ein gutes User Interface Design (mit Bildern)

1. Versuchen Sie, ein einspaltiges statt eines meh...

Detaillierter Code zum Hinzufügen von Electron zum Vue-Projekt

1. Fügen Sie package.json hinzu "Haupt"...

JavaScript-Entwurfsmuster, Proxy-Muster lernen

Inhaltsverzeichnis Überblick Durchführung Schutz-...

isPrototypeOf-Funktion in JavaScript

Inhaltsverzeichnis 1. istPrototyp von() Beispiel ...

Detaillierte Diskussion zum Thema mysqldump-Datenexport

1. Bei der Verwendung von mysqldump wird ein Fehl...

So verwenden Sie mysqldump für vollständige und zeitpunktbezogene Sicherungen

Mysqldump wird für logische Backups in MySQL verw...

So verwenden Sie einen Docker-Container für den Zugriff auf das Host-Netzwerk

Vor Kurzem wurde ein System bereitgestellt, das n...

Vue+Bootstrap realisiert ein einfaches Studentenverwaltungssystem

Ich habe Vue und Bootstrap verwendet, um ein rela...

Verwenden Sie CSS, um einen 3D-Fotowandeffekt zu erstellen

Verwenden Sie CSS, um eine 3D-Fotowand zu erstell...

Tudou.com Frontend-Übersicht

1. Arbeitsteilung und Prozess <br />Bei Tud...

Detaillierte Erläuterung von acht Methoden zum Korrigieren des CSS-Seitenendes

Beim Schreiben einer Seite kommt es häufig vor, d...

So installieren Sie Graphviz und beginnen mit dem Tutorial unter Windows

Herunterladen und installierenUmgebungsvariablen ...