Ok, bitte nicht erschlagen, für das was jetzt folgt :/
...ich habe den Code auf das Wesentliche reduziert, wer das Original sehen will, bitte melden, dazu empfehle ich aber starke Kopfschmerztabletten.
Prinzipiell soll der ganze Spuk einem modularen funktionellen Aufbau dienen, soll heißen, die Funktionen sollen unabhängig voneinander aufrufbar sein (so wird leiderNochEineFunktion z.B. im Original noch an anderen Stellen verwendet):
function ersteFunktion(eingabe_aussen) {
return function(eingabe_innen) {
let zaehler = 0;
leiderNochEineFunktion(eingabe_aussen)(eingabe_innen);
}
}
function leiderNochEineFunktion(zweite_aussen) {
return function(zweite_innen) {
zaehler++;
console.log(`${zweite_aussen} ${zweite_innen} ${zaehler}`);
}
}
ersteFunktion("Erste Iteration")("Zweite Iteration");
// UNCAUGHT REFERENCE ERROR: zaehler IS NOT DEFINED
Wie kann ich auf Zaehler zugreifen?
...ich will ja auf die Originalvariable zugreifen, daher kann ich ihn nicht einfach als Argument übergeben.
Eigentlich müsste zaehler ja auch im Scope sein, so wie ich das sehe:
(...) >> let zaehler >> leiderNochEineFunktion >> function >> Zugriff auf zaehler
Danke für eure Hilfe!
(zaehler als globale Variable funktioniert witzigerweise ... aber kann ja auch nicht im Sinne des Erfinders sein, wenn ich den globalen Namespace zumülle…)