Hakuna matata!
Du benutzt aber die selbe globale Variable für beide Intervalle.
GLOBALE Variable? Soll heißen
function { var foo = bar; }
wirkt wie{ var foo = bar; }
bzw. wievar foo = bar;
oder wie?
Nein, da hast du mich missverstanden. Ich sprach von der start-Funktion. Die Variable laenge wird hier nicht mit dem var-Schlüsselwort deklariert und ist auch kein Parameter und wird deshalb automatisch in allen übergeordneten Gültigkeitsbereichen bis hin zum globalen Scope gesucht:
globales bar:
function foo () {
bar = 'whoop';
}
foo();
console.log( bar ); // whoop
lokales bar:
function foo () {
var bar = 'whoop';
}
foo();
console.log( bar ); // Uncaught Reference Error: bar is not defined
In der unbenannten Funktion wird laenge zwar lokal daklariert, aber wie du bereits in deiner anderen Antwort richtig erklärt hast, kann die start-Funktion nicht auf diesen Gültigkeitsbereich zugreifen. Wir wollten beide auf das gleiche hinaus, nur aus unterschiedlichen Perspektiven.
“All right, then, I'll go to hell.” – Huck Finn