emailconfirmed, nsInternRO, nsInternRW, Administrators
3,356
edits
m (Lieber kein Beispiel, wenn es eines ist, von dem abgeraten wird) |
|||
Line 131: | Line 131: | ||
Im Gegensatz zu vielen anderen Sprachen, haben Variablen in JavaScript keine explizite Typ-Zuweisung (non-typecasted), d.h. eine Variable kann Werte beliebiger Typen enthalten. | Im Gegensatz zu vielen anderen Sprachen, haben Variablen in JavaScript keine explizite Typ-Zuweisung (non-typecasted), d.h. eine Variable kann Werte beliebiger Typen enthalten. | ||
Trotz der nicht-expliziten Typzuweisung, gibt es in Javascript Objekte, die man mit primitiven Type verwechseln könnte: Numbers ([[bool]], [[int]], [[float]], ...), und Strings ([[char]], [[string]]). | |||
Sichtbar wird dies an folgendem Beispiel: | Sichtbar wird dies an folgendem Beispiel: | ||
Line 152: | Line 152: | ||
Wenn eine Variable in einer Funktion deklariert wird, gilt die Variable nur innerhalb der Funktion. | Wenn eine Variable in einer Funktion deklariert wird, gilt die Variable nur innerhalb der Funktion. | ||
<source lang="JavaScript"> | <source lang="JavaScript"> | ||
function foo(){ | |||
var n="hallo" | |||
alert(n);//"hallo" erscheint | |||
} | |||
foo(); | |||
alert(n); //fehler, n not defined | |||
</source> | </source> | ||
Um eine Variable auch außerhalb einer Funktion nutzen zu können, sollte sie einfach außerhalb der Funktion deklariert werden. | |||
Das | Wenn einer Variablen ein Wert zugewiesen wird, ''ohne'' dass diese Variable vorher mit "var" definiert wurde, wird die Variable automatisch definiert. Das sollte aber vermieden werden, da schnell der Überblick über genutzte Namen der Variablen verliert. Zudem sind diese 'implizit deklarierten' Variablen immer global, d.h. selbst wenn die Variable selber zuerst in einer Funktion genutzt wird, gilt sie im ganzen Script. | ||
== Klassen und Objekte == | == Klassen und Objekte == |