Im folgenden Code:verschachtelte Funktion verlieren variablen Referenz
function outer() {
var x = 'foo';
function inner() {
var y = x; // y == 'foo'
var x = 'bar'; // x == 'bar', y == undefined
}
}
Warum wird die Variable y
innerhalb inner()
nicht definiert werden? sollte es sich nicht beziehen auf x
in outer()
? Wenn die Zeile var x = 'bar';
entfernt wird, hat y
tatsächlich den Wert 'foo'.
Es heißt Heben. –