Hallo,
ich hatte das Problem, daß ich Objekte oder auch Variablen von einer
Funktion global sichtbar erzeugen wollte.
Dabei habe ich herausgefunden, daß Initialisierungen von Variablen
innerhalb einer Funktion ohne ein "var" davor auch global sichtbar sind
und habe das dann bei meinem JavaScript-Problem kräftig benutzt.
z.B:
eval(varname + "_bild = 0;");
oder:
eval(name + "_objekt = new testObject('layer1')");
Das hat hervorragend funktioniert!
Nun zum Problem: Verletze ich damit irgentwelche JavaScript Regeln?
Ich habe verschiedenen Tutorien, unter anderem das von Netscape
(CoreGuideJS15), nach dem Thema Variablendeklaration und -sichtbarkeit
durchgeforstet, und dort stand dann, man könne das "var" vor der
Deklaration globaler Variablen weglassen, bei lokalen muß es immer dabei
sein.
Das habe ich ja offensichtlich verletzt, wenn ich bei der Deklaration von
Variablen innerhalb einer Funktion das "var" weglasse.
Weiterhin bleibt aber in diesen Tutorien bei der Definition von Objekten
vor den Methoden und Eigenschaften das "var" immer weg, also z.B:
function testObject()
{
this.name;
this.methode1 = ausfuehren;
this eigenschaft1 = 0;
}
Wie funktioniert das nun richtig, und wer setzt diesen Sachverhalt fest
...naja und wo kann man dazu mal was definitives nachlesen?
Danke für Eure Antwort
Simy