NEWS
Variablenverhalten in Funktionen
-
Hallo Zusammen,
bin leider nicht sehr fit, was Programmiertechniken betrifft, deshalb auch die Frage hier ... suche im Forum oder im Internet gestaltet sich schwierig, schon auf Grund der Fragestellung.
Los geht's:
Funktion A wird durch div. Ereignisse getriggert um Statusmeldungen abzugeben.Jetzt kommt Ereignis 1 und 2 sehr schnell hintereinander und ich habe gemerkt, dass Ereignis 2 Variablen vom Trigger Ereignis 1 in der Funktion A beeinflusst, was natürlich sehr schlecht ist.
Lösungsgedanke:
Kann ich eine Funktion B in Funktion A aufrufen und hier werden dann die Variablen gegen die "Aufrufe" von den Variablen des zweiten / nachkommenden "Aufrufs" abgeschottet? Oder passiert da das gleiche?Wenn das nicht klappt...gibt es dafür eine Lösung?
Ich kann doch nicht für jedes Ereignis eine eigene (identische) Funktion schreibenDanke für eure Hilfe
-
zeige dein skript.
es gibt beim deklarieren von variablen unterschiede zwischen
var und let
auch wo du diese deklarierst (vor dem on triger oder nach dem on trigger oder gar in einer tieferen verschachtelung.auch können sich variablen überlagern (shadowing), wenn sie mit gleichem namen in unterschiedlichen scope-stufen neu deklariert werden. das führt dann zu überraschenden verhalten
das Thema läuft unter scope von variablen
https://developer.mozilla.org/en-US/docs/Glossary/Scope?retiredLocale=de
auch die verlinkten seiten zu var, let, const und function lesen.
ist leider nicht ganz simpel, aber bei weiteren verständnisfragen gerne hier. -
Danke für deine Antwort auf meine Anfrage!
Ich bin zu 95% in Blockly unterwegs und das deklariert sehr früh die Variablen, was wahrscheinlich auch zu dem Problem führt.
Werde mich einlesen in den beigefügten Link und auch mal versuchen mit reinem Skript zu arbeiten um die Deklaration besser beeinflussen zu können.
Jetzt habe ich einen roten Faden
Du hast mir sehr geholfen ... Danke dir!