Felix Riesterer: onclick handler

Beitrag lesen

Lieber molily,

Sorry, dass ich darauf herumreite ;)

aber nein, nicht entschuldigen! Dadurch, dass Du darauf herumreitest, lerne ich immer wieder etwas wertvolles dazu! Für mich ist das durchaus spannend, denn in aller Regel habe ich weder den Mut noch die Veranlassung, in den "Core" von JS gedanklich vorzustoßen.

In der Tat ist der Begriff Variablenobjekt in seiner *korrekten Verwendung* für das Verständnis von Closures sehr hilfreich und macht die Sache anschaulicher.

In diesem Fall hilft _mir_ die Unterscheidung zwischen "Variable" und "Variablenobjekt" tatsächlich weiter. Ob das aber für einen Laien auf einem früheren Lernstand ebenso hilfreicher ist, wage ich zu bezweifeln.

Vielleicht können wir uns darauf einigen, dass für einen Laien das Verständnis von Closures im vorliegenden Beispielfall dadurch erleichtert wird, indem man ihn darauf hinweist, dass nicht der Wert alleine, sondern die ganze Variable in den jeweiligen Funktionsobjekten referenziert wird, sodass Änderungen an ihrem Wert von den in den Funktionsobjekten eingeschlossenen Referenzen "wahrgenommen" und "befolgt" werden.

Sicherlich ist das Verständnis um die inneren Funktionsweisen einer JS-Engine hilfreich, um solche Zusammenhänge zu verstehen, es kann aber je nach eigenem Lernstand auch überfordern!

Ein Name (Identifier, Bezeichner) wird anhand der Scope-Chain aufgelöst, dabei werden mehrere Variablenobjekte durchlaufen und nach dem Namen durchsucht, um den zugehörigen Wert (bzw. eine Referenz) zu finden.

Ja, das ist des Browsers innere Programmierung. Aber ob diese spezielle Ausführung dem OP beim Verständnis von Closures wirklich weiterhilft, oder ob sie ihn im Moment eher verwirrt, kann wohl nur er beantworten. Ich tippe jedenfalls auf letzteres. ;-)

Der korrekte Begriff für einen einzelnen Eintrag im Variablenobjekt (was du als »Variablenobjekt« bezeichnet hattest) nennt sich übrigens Binding, soweit ich weiß – das führt allerdings zu weit.

Du sagst (bzw. schreibst) es. Ich danke Dir trotzdem für Deine Mühen!

Liebe Grüße,

Felix Riesterer.

--
ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)