Wenn es um Abschlüsse geht, handelt es sich um den Variablenbereich der js-Funktion, der in lokale Variablen und globale Variablen unterteilt ist. Variablen außerhalb der Funktion können direkt von innerhalb der Funktion gelesen werden, Variablen innerhalb der Funktion können jedoch nicht direkt von außerhalb der Funktion gelesen werden.
Aber manchmal müssen wir die lokalen Variablen der Funktion abrufen, damit der Abschluss eine andere Funktion innerhalb der Funktion definiert, wie im folgenden Code gezeigt:
var foo=(function () { var a="11"; return{ get_a:function () { return a; }, new_a:function (newValue) { a=newValue; } } } ()) console.log(foo.a) //输出undefined,因为函数外部不能直接访问内部的局部变量 console.log(foo.get_a())//输出11 foo.new_a("我是通过闭包改变的值")//调用并且传参 console.log(foo.get_a()) //输出我是通过闭包改变的值
Auf diese Weise können wir die lokalen Variablen innerhalb einer Funktion außerhalb davon abrufen. In der obigen Funktion ist die Funktion innerhalb von return der Abschluss.
Das obige ist der detaillierte Inhalt vonPopuläres Verständnis von Verschlüssen – 5Clay. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!