Also, wie geht es dir? Ich hoffe es!
Ich habe versucht, einige Programmierprobleme in Leetcode zu lösen, und bin bei einer der Herausforderungen auf ein sehr wichtiges Programmierkonzept gestoßen, das viele Menschen nur schwer verstehen können.
Deshalb habe ich beschlossen, hier zu schreiben, um bestmöglich zu erklären, wie Abschlüsse in JavaScript funktionieren. Komm mit!
Ich arbeitete an einer Herausforderung namens „Counter“, bei der ich eine Zählerfunktion erstellen musste, die zunächst die Ganzzahl n zurückgab und bei jedem weiteren Aufruf eine Einheit mehr als den vorherigen Wert zurückgab. Zum Beispiel:
Das Problem gibt einige Hinweise, einschließlich der Tatsache, dass wir Funktionen verwenden können, die andere Funktionen zurückgeben.
Das ist das Konzept von Schließungen. Also folgte ich dem Tipp und ging diesen Weg. Hier ist die Lösung, die ich gefunden habe:
var createCounter = function (n) { let contador = n; return function () { resultado = contador; contador++ return resultado; }; };
Dieser Code definiert eine Funktion namens „createCounter“, die eine andere Funktion (Abschluss) zurückgibt, die in der Lage ist, eine lokale Variable (in diesem Fall den Zähler) zu speichern und zu manipulieren.
In diesem letzten Schritt erkennen wir die wahre Kraft eines Abschlusses. Ein Abschluss liegt vor, wenn eine Funktion eine andere Funktion zurückgibt, die Zugriff auf externe Variablen hat und ihren Zustand zwischen Aufrufen beibehält. Es ist, als hätte ich in meiner Funktion ein kleines „Versteck“, in dem ich Informationen speichern und später darauf zugreifen kann.
Die Rick and Morty-Reihe spielt mit interdimensionalem Reisen und anderen Zivilisationen und kritisiert und regt Überlegungen zu vielen existenziellen Fragen für den Menschen an.
Wenn Sie die Serie nicht kennen, hier eine kurze Zusammenfassung: Rick Sanchez, die Hauptfigur des Werks, ist ein Wissenschaftler, der allerlei verrückte Technologie entwickelt und normalerweise seinen Enkel Morty auf seine Abenteuer mitnimmt. Eine der berühmtesten Erfindungen des alten Mannes ist das interdimensionale Portal, das es ihm ermöglicht, zwischen Realitäten und Dimensionen zu reisen. Um mehr zu erfahren, müssen Sie sich die Serie ansehen (lacht).
Was willst du damit sagen, Neilton?
Stellen Sie sich vor, Rick entwickelt einen interdimensionalen Rucksack für Morty, der Zugang zu einer bestimmten Dimension ermöglicht. In dieser Dimension platziert Rick einige wichtige Werkzeuge. Morty kann den Rucksack überall hin mitnehmen – sei es zur Schule, zum Spaziergang oder sogar zu einer intergalaktischen Reise – und hat auch außerhalb von Rick Zugriff auf alles, was dort aufbewahrt wird.
Das Beste daran? Morty kann den Rucksack öffnen und die Werkzeuge herausnehmen, wann immer er den Inhalt verwenden oder sogar verändern möchte. Und egal wo es ist, das Gespeicherte bleibt zugänglich.
Und wie hängt dieses Beispiel mit Schließungen zusammen?
Abschlüsse sind leistungsstarke Ressourcen in der Programmierung. Als Hauptvorteile der Verwendung von Verschlüssen hebe ich die Kapselung und Memoisierung hervor. Kapselung, da auf den Wert nur über den Abschluss (interne Funktion) zugegriffen werden kann, und Memoisierung, da der Wert von Variablen zwischen Aufrufen erhalten bleiben kann.
KI-generiertes Bild: https://designer.microsoft.com/image-creator?scenario=texttoimage
Eingabeaufforderung: Erstellen Sie ein Bild, in dem Rick von Rick and Morty Morty ein leuchtendes dimensionales Taschengerät überreicht. Morty zieht Gegenstände wie Werkzeuge und Geräte aus der Tasche, während Rick in einem Labor beiläufig die Funktionsweise erklärt. Die Tasche stellt einen Verschluss dar und enthält schwebende Gegenstände, auf die Morty weiterhin zugreifen kann, auch nachdem Rick sich entfernt hat.
Haben Sie also verstanden, was Abschlüsse sind und wie wichtig sie beim Programmieren sind? Manchmal wünschte ich, ich hätte einen Rucksack wie den von Morty, um nützliche Dinge aufzubewahren oder einfach um mich in eine andere Dimension zu teleportieren (lacht).
Wenn Ihnen der Inhalt gefallen hat, kommentieren und teilen Sie ihn! Bitte geben Sie mir Kraft, wenn Sie glauben, dass dieser Artikel anderen helfen wird.
Bis zum nächsten Mal!
Das obige ist der detaillierte Inhalt vonRick und Morty und Clorsures: Was haben diese Dinge gemeinsam?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!