Nutzen Sie benutzerdefinierte Variablen in JavaScript

Programmiersprachen sind ohne Variablen so gut wie nutzlos. In diesen speziellen Informationsbereichen können Zahlen, Textzeichenfolgen, Objekte und andere Datentypen gespeichert werden. Einmal gespeichert, können diese Informationen später in Ihrem Programm verwendet werden. Mit einer Variablen könnte der Name einer Person irgendwann im Skript gespeichert und verwendet werden.

Variablen sind temporäre Informationsinhaber. Sie können halten:

  • Numerische Werte ("Zahlen") - Zahlen, die addiert werden können. Beispiel: 2 + 2 ergibt 4
  • Zeichenketten - eine Sammlung von Texten wie "JavaScript" oder "Mein Name ist Mudd"
  • True / False-Werte - der Boolesche Wert true und false
  • Objekte - JavaScript oder benutzerdefinierte Objekte (JavaScript-Variablen können einige andere Arten von Daten enthalten, dies sind jedoch bei weitem die am häufigsten verwendeten Typen).

(Hinweis: Wie bei den meisten modernen Programmiersprachen unterstützt JavaScript zusätzlich zu den grundlegenden skalaren Variablen, die für die oben genannten Datentypen verwendet werden, Array-Variablen. Wir konzentrieren uns auf einwertige Variablen für diese Spalte und widmen Arrays eine separate Spalte.)

JavaScript-Variablen "gehören" zu dem Skriptdokument, mit dem sie erstellt wurden. Die Variablen gehen verloren, wenn das Dokument entladen wird. Außerdem wird der Inhalt einer Variablen gelöscht, wenn Sie ihnen einen neuen Wert zuweisen. Obwohl eine in einem Dokumentskript erstellte Variable normalerweise nicht von einem anderen Dokumentskript gesehen wird, bietet JavaScript Möglichkeiten zum Teilen von Variablen zwischen Skripten. Sie tun dies, indem Sie den Namen des Dokuments zusammen mit dem Namen der Variablen referenzieren.

Mehrere JavaScript-Anweisungen erstellen und speichern Variablen. Der grundlegende Weg, dies manuell zu erreichen, ist der Zuweisungsoperator equals (=). Die grundlegende Syntax lautet:

Variablenname = Wert

Das erste Argument ist der Name der Variablen. Variablennamen können sehr lang sein, aber Sie können die Zeichen, die Sie verwenden können, einschränken. Weitere Informationen zu gültigen Variablennamen finden Sie im Abschnitt zu Grenzwerten für Variablennamen.

Das zweite Argument ist der Inhalt der Variablen. Sie können alle möglichen Dinge in eine Variable einfügen, einschließlich einer Zahl, einer Zeichenfolge, eines mathematischen Ausdrucks (z. B. 2 + 2) und verschiedener anderer Dinge, auf die wir gleich noch eingehen werden.

Pascal-Benutzer könnten versucht sein, die Variablenzuweisung mit: = zu erstellen. Beachten Sie, dass diese Syntax in JavaScript nicht unterstützt wird.

Im Folgenden finden Sie eine genauere Übersicht über die vier häufigsten Inhalte, die Sie in JavaScript-Variablen einfügen können, einschließlich Beispielen.

Inhalt in JavaScript-Variablen platziert

Zahlen in Variablen

Eine Zahl besteht aus einer oder mehreren Ziffern, die im Computer so gespeichert sind, dass JavaScript mit ihnen mathematische Berechnungen durchführen kann. JavaScript unterstützt sowohl Ganzzahlen als auch Gleitkommawerte. Um eine Zahl in eine Variable einzufügen, geben Sie einfach den Variablennamen, das Gleichheitszeichen (den Variablenzuweisungsoperator) und den Wert an, den Sie verwenden möchten. Mit dem folgenden Beispiel platzieren Sie die Nummer 10 in einer Variablen namens MyVar:

MyVar = 10;

Zeichenfolgen in Variablen

Eine Zeichenfolge besteht aus einem oder mehreren Textzeichen, die in einer einzelnen Datei im Speicher angeordnet sind. Zeichenfolgen können Zahlen (Ziffern), Buchstaben, Satzzeichen oder eine Kombination dieser Elemente enthalten. Mathematische Berechnungen können nicht für Zeichenfolgen durchgeführt werden. Zeichenfolgen werden JavaScript-Variablen zugewiesen, indem sie in einfache oder doppelte Anführungszeichen eingeschlossen werden:

"Ich bin eine Schnur"

oder

"Ich bin eine Schnur"

Beachten Sie, dass doppelte oder einfache Anführungszeichen zulässig sind. Im Gegensatz zu einigen Sprachen wie Perl unterscheidet JavaScript nicht zwischen den beiden Formen von Anführungszeichen. Dieses Arbeitsbeispiel zeigt, wie eine Zeichenfolge in eine Variable eingefügt wird:

MyVar = "Dies ist JavaScript";

Boolesche Werte in Variablen

Es gibt zwei Boolesche Werte: true und false. Einige Programmiersprachen haben keinen separaten Satz von Booleschen Werten und verwenden stattdessen 0 für false und 1 oder -1 (oder einen anderen Wert ungleich Null) für true. JavaScript kann diese Zahlen verwenden, um wahr und falsch darzustellen, behält sich jedoch zusätzlich die Wörter "wahr" und "falsch" vor, um Boolesches wahr und falsch zu bedeuten. Sie können sich die booleschen wahren und falschen Werte als äquivalent zu Ein / Aus oder Ja / Nein vorstellen. Um einer Variablen einen booleschen Wert zuzuweisen, geben Sie nur das Wort true oder false ohne Anführungszeichen an. Hier ist ein Beispiel:

MyVar = true;

Objekte in Variablen

Variablen können Objekte enthalten, einschließlich JavaScript-Objekte. Grundsätzlich gibt es zwei Arten von Objektvariablen:

  • Variablen, die integrierte browserbezogene Objekte enthalten - Fenster, Dokument, Navigator usw. - sind tatsächlich Verweise auf das ursprüngliche Objekt. Sie sind wie Kopien, aber die Kopien ändern sich, wenn sich das Original ändert. In einigen Fällen wirkt sich eine Änderung am Objekt in der Variablen auf das ursprüngliche JavaScript-Objekt aus.

  • Variablen, die benutzerdefinierte Objekte enthalten, repräsentieren das tatsächliche Objekt. Nehmen Sie eine Änderung am Objekt in der Variablen vor, und Sie ändern nur dieses Objekt.

Geben Sie den Namen des Objekts wie folgt an, um einer Variablen ein JavaScript-Objekt zuzuweisen:

MyVar = Navigator;

Verwenden Sie die neue Anweisung und geben Sie den Namen der Objektfunktion an, um einer Variablen eine neue Kopie eines benutzerdefinierten Objekts zuzuweisen:

MyVar = neues myObject ();

SUBHEAD Variablennamenbeschränkungen

Wenn es um die Namen geht, die Sie Variablen geben können, bietet JavaScript viel Spielraum. JavaScript-Variablen können nahezu unbegrenzt lang sein, obwohl Sie aus praktischen Gründen Ihre Variablennamen wahrscheinlich unter 10 oder 15 Zeichen halten werden. Kürzere Variablennamen helfen JavaScript, das Programm schneller auszuführen. Beachten Sie beim Benennen Ihrer Variablen Folgendes:

  • Variablennamen sollten nur aus Buchstaben bestehen - ohne Leerzeichen. Sie können Zahlen verwenden, solange der Name nicht mit einer Ziffer beginnt. Zum Beispiel ist MyVar1 akzeptabel, 1MyVar jedoch nicht.

  • Verwenden Sie keine Interpunktionszeichen in Variablennamen. Ausnahme: der Unterstrich (_). Das heißt, die Variable My_Var ist akzeptabel, My * Var jedoch nicht. Variablen können mit dem Unterstrich beginnen.

  • Variablennamen unterscheiden zwischen Groß- und Kleinschreibung. Die Variable MyVar unterscheidet sich deutlich von myVar, myvar und anderen Variationen.

Grundlegendes zu den "losen" variablen Datentypen von JavaScript

Im Gegensatz zu einigen anderen Programmiersprachen muss in JavaScript der Typ der Variablen, die Sie erstellen möchten, nicht explizit definiert werden. Dieses JavaScript-Verhalten wird als "lose Datentypisierung" bezeichnet und unterscheidet sich von C und Java, die beide eine strikte Datentypisierung verwenden.

In JavaScript müssen Variablentypen nicht unterschieden werden, indem Sonderzeichen an das Ende des Variablennamens angehängt werden, z. B. MyVar $ für eine Zeichenfolgenvariable (oder $ MyVar für eine skalare Variable a la Perl). JavaScript dekodiert den Variablentyp intern basierend auf seinem Inhalt.

Verwenden der var-Anweisung zum Zuweisen einer Variablen

JavaScript unterstützt eine var-Anweisung, mit der eine Variable explizit definiert werden kann. Die Syntax besteht lediglich aus der Anweisung var, einem Leerzeichen und demselben oben beschriebenen Variablenzuweisungsausdruck. Zum Beispiel:

var MyVar = "Dies ist eine Variable";

Sie können auch die var-Anweisung mit dem Variablennamen verwenden, um die Variable zu deklarieren, aber keinen Wert dafür definieren:

var MyVar;

In diesem Fall haben Sie MyVar im Speicher definiert, müssen ihm jedoch noch keinen Wert zuweisen. Diese Technik wird häufig beim Einrichten globaler Variablen verwendet - Variablen, die an einer beliebigen Stelle in Ihrem Skript frei freigegeben werden können. Weitere Informationen zu globalen Variablen finden Sie im folgenden Abschnitt "Grundlegendes zum Umfang von Variablen".

Einschränkungen der Stringlänge

JavaScript legt ein Limit von 254 Zeichen für jede Zeichenfolgenvariablenzuweisung in Ihrem Programm fest. Wenn Sie das Limit von 254 Zeichen überschreiten, antwortet JavaScript mit der Fehlermeldung "Nicht abgeschlossenes Zeichenfolgenliteral". (Hinweis: Dies ist grundsätzlich eine Beschränkung von JavaScript in Netscape 2.0x. Es ist eine gute Idee, dies zu beachten, da nicht alle Benutzer Netscape 3.0 übernommen haben.)

Sie können längere Zeichenfolgen erstellen, indem Sie sie "zusammensetzen" - solange jedes Stück maximal 254 Zeichen enthält. Nachdem Sie jeder Variablen eine Zeichenfolge zugewiesen haben, kombinieren Sie sie mit dem Zeichen +. Dies wird als "Verkettung" bezeichnet. Das folgende Beispiel zeigt, wie die Verkettung funktioniert:

MyVar = "Dies ist der Anfang" +, wie Sie "+" Strings erstellen können ";

Jedes einzelne Zeichenfolgensegment - definiert durch Text in Anführungszeichen - kann aus bis zu 254 Zeichen bestehen. Um eine Zeichenfolge länger als 254 Zeichen zu machen, fügen Sie einfach weitere Segmente hinzu. Ein anderer Ansatz besteht darin, Zeichenfolgen mit dem Zuweisungsoperator + = wie folgt zu erstellen:

MyVar = "Dies ist der Anfang" MyVar + = ", wie Sie" MyVar + = Strings erstellen können ".

Sie können Zeichenfolgen auf diese Weise weiter verketten, solange Ihr Computer über den Speicher dafür verfügt. Während JavaScript Zeichenfolgen enthalten kann, die größer sind als in vielen anderen Programmiersprachen (wie dem typischen 64K von Basic), kann dies die Leistung des Systems erheblich beeinträchtigen. Offensichtlich werden Sie nicht viele große Zeichenfolgenvariablen erstellen. Es ist nur schön zu wissen, dass eine JavaScript-Variable bei Bedarf so viel Text aufnehmen kann.

Den "Umfang" von Variablen verstehen

Der "Umfang einer Variablen" hat nichts mit Optik oder Mundwasser zu tun, sondern vielmehr damit, inwieweit eine Variable für andere Teile eines JavaScript-Programms sichtbar ist. Sofern Sie JavaScript keine expliziten Anweisungen geben, wird der Umfang seiner Variablen wie folgt verwaltet:

  • Außerhalb einer Funktion definierte Variablen stehen jeder Funktion innerhalb des Skripts zur Verfügung, sofern alle Variablen im Skript desselben HTML-Dokuments definiert sind. Diese werden als globale Variablen bezeichnet.

  • Innerhalb einer Funktion definierte Variablen sind ebenfalls global, vorausgesetzt, die var-Anweisung wird beim ersten Deklarieren dieser Variablen nicht verwendet. Das heißt, MyVar = "Hallo".

  • Variablen, die in einer Funktion mit der Anweisung var definiert sind, sind nur für diese Funktion "lokal". Diese werden als lokale Variablen bezeichnet.

  • Globale Variablen bleiben auch dann im Speicher, wenn ein Skript die Ausführung gestoppt hat. Die Variable bleibt im Speicher, bis das Dokument entladen wird.

Lokale Variablen werden so behandelt, als ob sie nicht außerhalb der Funktion existieren, in der sie definiert sind. Auf diese Weise können Sie innerhalb einer Funktion denselben Variablennamen verwenden, und diese Variable stört die gleichnamige Variable an keiner anderen Stelle im Skript.

Das folgende Beispiel zeigt dies. Wenn Sie auf die Schaltfläche klicken, zeigt das Skript drei Warnfelder an. Die folgenden Details, was passiert, wenn Sie auf die Schaltfläche klicken:

  • JavaScript ruft firstFunction auf, das einer lokalen Variablen namens MyVar den Wert 1 zuweist. Der Inhalt von MyVar wird angezeigt.

  • JavaScript ruft secondFunction auf, die einer lokalen Variablen, auch MyVar genannt, den Wert 2 zuweist. Der Inhalt von MyVar wird angezeigt.

  • JavaScript kehrt zu firstFunction zurück, wo der Inhalt von MyVar erneut angezeigt wird. Das Ergebnis ist 1, was der Wert von MyVar local für firstFunction ist.

Referenzieren von Variablen in anderen geladenen Dokumenten

Bei der Verwendung von Frames ist es häufig erforderlich, Variablen in mehreren Dokumenten gemeinsam zu nutzen. Ein oder mehrere Frames benötigen möglicherweise eine Variable, die in einem anderen Frame enthalten ist. Variablen (auch globale) sind naturgemäß außerhalb des Dokuments, in dem sie erstellt wurden, nicht sichtbar. Wenn Sie also auf eine Variable in einem anderen Dokument verweisen möchten und davon ausgehen, dass das Dokument in den Browser geladen ist, müssen Sie diese Variable explizit referenzieren, indem Sie den Fensternamen vor dem Variablennamen hinzufügen. Hier ist die Syntax:

winname.varname

Dabei winnameist der Name des Dokuments und varnameder Name der Variablen. Mehr zu Dokumentnamen in Kürze.

Sie können Variablen mithilfe der folgenden Technik zuweisen und referenzieren. Dadurch wird beispielsweise die MyVar-Variable im mydoc-Fenster auf 1 gesetzt:

mydoc.MyVar = 1;

Der folgende Code weist den Wert einer lokalen MyVar-Variablen im mydoc-Fenster zu.

VarInThisDoc = mydoc.MyVar;

Woher kommen die Namen für die Fenster? Es hängt alles davon ab, wie die Fenster verwendet werden.

Um eine Variable im Hauptbrowserfenster aus einem von Ihnen erstellten Fenster zu verwenden, stellen Sie zunächst einen "Link" zum übergeordneten Fensterobjekt bereit. Verwenden Sie dazu die folgende Methode:

newwindow = window.open ("", "NewWindow"); // Wiederhole dies für Mac / X Netscape 2.0 newwindow.creator = self;

In diesem neuen Fenster können Sie dann mit der folgenden Syntax auf eine beliebige Variable im Hauptfenster verweisen:

Creator.MyVar;

Um eine Variable in einem von Ihnen erstellten Fenster zu verwenden, verwenden Sie den Objektnamen, den Sie beim Erstellen des Fensters angegeben haben. Beispielsweise würden Sie newwindow für ein Fenster verwenden, das wie folgt erstellt wurde:

newwindow = window.open ("", "NewWindow");

Verweisen Sie nun mit der folgenden Syntax auf diese Variable:

newwindow.MyVar;

So verwenden Sie eine im Frameset definierte Variable, dh das Dokument, das enthält

tag - bezeichne es als übergeordnetes Element. Hier ist ein Beispiel:

parent.MyVar;

Um eine Variable in einem anderen Rahmendokument zu verwenden, beziehen Sie sich auf sie unter Verwendung des Rahmennamens, den Sie im angegeben haben

Gordon McComb ist Autor, Berater und Dozent. In seinen 20 Jahren als professioneller Schriftsteller hat er 50 Bücher und über tausend Zeitschriftenartikel geschrieben. Mehr als eine Million Exemplare seiner Bücher sind gedruckt. Gordon schreibt auch eine wöchentliche syndizierte Zeitungskolumne über Computer, die weltweit mehrere Millionen Leser erreicht. Gordons neuestes Buch ist The JavaScript Sourcebook, erhältlich bei Wiley Computer Publishing.

Erfahren Sie mehr über dieses Thema

  • Netscape-Dokumentation für JavaScript

    //home.netscape.com/eng/mozilla/3.0/handbook/javascript/index.html

  • JavaScript und Cookies

    //www.hidaho.com/cookies/cookie.txt

  • Beispiel für JavaScript-Variablen und Frames

    //home.netscape.com/comprod/products/navigator/version_2.0/script/script_info/tutorial/main.htm

  • Erweitertes Beispiel für die Verwendung von JavaScript-Variablen

    //www.hidaho.com/colorcenter/

Diese Geschichte "Nutzen Sie benutzerdefinierte Variablen in JavaScript" wurde ursprünglich von JavaWorld veröffentlicht.