• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] Noch einmal eine Frage zur Deklaration mit var

Mia

New member
Hallo Ihr Lieben :)

ich habe noch einmal eine Frage zur Deklaration mit var.

Innerhalb einer Funktion ist es klar: Mit var deklarierte Variablen sind nur innerhalb der Funktion verfügbar. Ohne var werden es eben globale Variablen oder eine bereits globale Variable gleichen Namens wird verwendet.

Warum lese ich dann aber immer wieder auch Variable ausserhalb von Funktionen (also direkt im Tag script, im Stamm, der Basis oder wie nennt man das?) sollten mit var deklariert werden!? Aber warum, ich habe es ausprobiert und egal ob ich Variable dort mit oder ohne var deklariere, sie sind global, also auch innerhalb der Funktionen verfügbar.

Warum sollte ich sie dann mit var deklarieren wenn sie nicht in Funktionen stehen? (Außer vielleicht wegen des besseren Stils?)

Vielen lieben Dank im Voraus :)
 
Wenn du eine Variable mit var deklarierst, ist sie nur im Scope der Funktion, in der sie definiert wurde, verfügbar. Ohne var ist eine Variable immer global.
In der Basis (oder wie auch immer man das nennt, window-scope?) ist die Auswirkung der ersten Regel gleich der der zweiten, daher ist es egal, wie du es schreibst.
Da man Variablen in Funktionen immer mit var deklarieren sollte, schadet es nicht, es in der Basis genauso zu machen. Der Code ist dann einfacher in Funktionen reinzukopieren. Außerdem liegt dann eine Konsistenz zwischen allen Variablen vor, sodass Tippfehler in Variablennamen einfacher zu finden sind, weil nur nach einem var mit den zu prüfenden Variablen gesucht werden muss.
Man sollte aber möglichst wenig (fast keine) Variablen in der Basis deklarieren, sondern nur Funktionen. Gutem Code ist diese Diskussion also egal!
 
Zuletzt bearbeitet:
Zurück
Oben