Globale Variablen
Anfänger
- javascript
Hallo zusammen,
ich schätze die folgende Frage, erscheint euch etwas dumm, aber ich bin auch noch Anfänger (siehe Nickname^^).
Wie kann ich die folgenden Variablen in mehreren Funktionen benutzen, ohne dass ich sie in jeder Funktion nochmal angeben muss?
var turquois = document.getElementById('turquois');
var red = document.getElementById('red');
var blue = document.getElementById('blue');
var green = document.getElementById('green');
var purple = document.getElementById('purple');
Klar habe ich von globalen Variablen gelesen und auch versucht, die Variablen einfach außerhalb von jeglicher Funktion anzugeben, aber dann fehlten den Funktionen die Variablen trotzdem. (Auch eine Deklaration ohne das Schlüsselwort var in der ersten Funktion, hat für die anderen Funktionen nicht geklappt.)
Eigentlich müssten die Variablen dann doch global sein und für jede Funktion angenommen werden oder?
Danke schon mal für eure Antworten
MfG
Anfänger
Lieber Anfänger,
hier ein Beispiel, das den Unterschied demonstrieren sollte:
// ohne "var" ist das äquivalent zu "window.turquoise = ..."
turquoise = document.getElementById("turquoise");
function getTurquoise () {
var turquoise = "Hello World!";
alert(turquoise); // "Hello World!", da turquoise eine lokale Variable ist
return window.turquoise; // DOMElement mit ID "turquoise"
}
getTurquoise().innerHTML = "I AM TURQUOISE!";
Liebe Grüße,
Felix Riesterer.
Hallo,
(Auch eine Deklaration ohne das Schlüsselwort var in der ersten Funktion, hat für die anderen Funktionen nicht geklappt.)
Eigentlich müssten die Variablen dann doch global sein und für jede Funktion angenommen werden oder?
Richtig.
Wenn das nicht der Fall ist, dann zeige uns mal bitte den restlichen Code, am besten als Online-Beispiel.
Nur als Hinweis: Viele Browser erzeugen ohnehin eine globale Variable »foo«, wenn es ein Element mit der ID »foo« gibt. Die Variable hat als Wert das entsprechende DOM-Element. Es ist aber besser, die Variablen explizit zu erzeugen.
Mathias