1. Variablen
ECMascript -Variablen sind lose Variablen. Die sogenannten losen Variablen bedeuten, dass der variable Name jegliche Art von Daten enthalten kann. Jede Variable ist nur ein Platzhalter, um den Wert zu sparen.
Definition: var Firstdemo;
2. Der Umfang der Variablen
2.1 Grundkonzept
Verwenden Sie VAR, um Variablen zu definieren: Definieren Sie lokale Variablen, die den Umfang der Variablen definieren. Diese Methode zur Definition von Variablen ist ebenfalls eine explizite Deklaration.
Wenn Sie dies nicht verstehen, können Sie sich das folgende einfache und grobe Beispiel ansehen:
Die Codekopie lautet wie folgt:
prüfen();
Funktionstest () {
var firstdemo = "Hallo"; // Definieren Sie lokale Variablen
Alert (FirstDemo); // Hallo
}
prüfen();
Funktionstest () {
var firstdemo = "Hallo"; // Definieren Sie die lokale Variable FirstDemo
}
Alert (FirstDemo); // einen Fehler melden, FirstDemo ist nicht definiert
In den beiden oben genannten Beispielen wird die Variable nach dem Ablauf der Funktion zerstört, wenn eine Variable mit Var in einer Funktion definiert wird.
Var auslassen, um Variablen zu definieren: Solange die Funktion, die die Variable definiert, einmal aufgerufen wird, kann die Variable global zugegriffen werden. Diese Methode zur Definition von Variablen ist ebenfalls eine implizite Deklaration
Die Codekopie lautet wie folgt:
<script type = "text/javaScript">
prüfen();
Alert (FirstDemo); //Hallo
Funktionstest () {
FirstDemo = "Hallo";
}
</script>
Tipps: Die explizit deklarierte Variable ist bereits in das aufrufende Objekt bei Vorkompilation zusammengestellt (z. B. var t = 1; var t = 1, wenn sie vorkompiliert ist; t = 1, wenn sie interpretiert wird;), im Gegensatz zu den implizit deklarierten Variablen, die nur dann als globale Variablen definiert werden, wenn sie interpretiert werden.
Wenn wir den Umfang der Variablen erfassen, können wir darüber nachdenken, wie Variablen vernünftig deklariert werden können, was nicht nur unnötige Speicheraufwand reduziert, sondern auch die durch wiederholten Definitionen von Variablen verursachten Schwierigkeiten und überschreibende zuvor definierte Variablen erheblich vermeidet.
2.2 Umfangsanalyse
Die Codekopie lautet wie folgt:
<script type = "text/javaScript">
Funktion DemoFunction (s) {
document.writeln (s)
}
var i = 0; // Globale Variable definieren
Funktionstest () {
Demofunktion (i);
Funktion Innerfunction () {
var i = 1; // lokale Variablen definieren
Demofunktion (i);
}
Innerfunktion ();
Demofunktion (i);
}
prüfen();
</script>
Ausgabeergebnis: 0 1 0
Die Codekopie lautet wie folgt:
<script type = "text/javaScript">
Funktion DemoFunction (s) {
document.writeln (s)
}
var i = 0;
Funktionstest () {
Demofunktion (i);
Funktion Innerfunction () {
Demofunktion (i);
var i = 1;
Demofunktion (i);
}
Innerfunktion ();
Demofunktion (i);
}
prüfen();
</script>
Ausgangsergebnis:
A, 0 0 1 0
B, 0 undefiniert 1 0
C, 0 Fehler I ist nicht definiert
Sie können erraten, welches das Ergebnis ist, und der Grund wird in der Nachricht ausführlich erklärt.
Das obige dreht sich alles um diesen Artikel. Einfach ausgedrückt ist der Umfang der Variablen in jeder Programmiersprache ein sehr kritisches Detail. Der Umfang der Variablen in JS ist relativ freier als der von Sprachen wie Java und C. Ein großes Merkmal ist, dass JS-Variablen keinen Umfang auf Blockebene haben und Variablen in Funktionen in der gesamten Funktion gültig sind.