Hier drükke ich eine Funktion, die über die Variable 'i' geschlossen ist und einen Abschluss erzeugt.Verschluss, wo wird der Wert gespeichert?
var myFunc = function(){
var i = 0;
function increment(){
return ++i;
console.log(i);
}
return increment
}
jetzt Wenn ich diese Funktion zu anderen Variablen wie zuweisen
var newFunc = myFunc();
var newFunc2 = myFunc();
einer von ihnen ruft in
newFunc() // 1
newFunc() // 2
newFunc() // 3
newFunc2() // 1 ??
führen Wo ist i der Wert von var gespeichert zu werden? wird es im Ausführungskontext jeder Funktion gespeichert, so dass es nur geändert werden kann, wenn wir diese spezifische Funktion aufrufen.
* "Wo wird der Wert von var i gespeichert?" * In der Umgebung, die jedes Mal erstellt wird, wenn Sie 'myFunc' aufrufen. –