Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie deaktiviere ich JavaScript-Variablen?

Susan Sarandon
Freigeben: 2024-11-25 09:56:10
Original
102 Leute haben es durchsucht

How Do I Unset JavaScript Variables?

Deaktivieren einer JavaScript-Variablen

Problem:

Globale Variablen in JavaScript können gesetzt und gesetzt werden Zugriff durch mehrere Skripte. Es kann jedoch vorkommen, dass eine Variable aus dem globalen Bereich entfernt werden muss, um sicherzustellen, dass nachfolgende Skripte ihre Existenz oder ihren Wert nicht erkennen können.

Lösung:

Die Der richtige Ansatz zum Deaktivieren einer JavaScript-Variablen hängt davon ab, wie sie ursprünglich definiert wurde.

1. Mit var definierte Variablen:

Variablen, die mit dem Schlüsselwort var deklariert wurden, können nicht mit dem Löschoperator gelöscht werden. Sie sind dauerhaft mit dem globalen Geltungsbereich verbunden und können nicht entfernt werden.

var globalVar = 1;
delete globalVar; // Returns false
console.log(globalVar); // Outputs 1
Nach dem Login kopieren

2. Ohne var definierte Variablen:

Variablen, die ohne das Schlüsselwort var erstellt wurden, werden implizit an das globale Objekt (normalerweise Fenster) angehängt. Sie können mit dem Löschoperator deaktiviert werden.

globalVar = 1;
delete globalVar; // Returns true
console.log(globalVar); // Throws ReferenceError
Nach dem Login kopieren

Technische Erklärung:

Die ECMAScript-Spezifikation definiert zwei Arten von Umgebungen, in denen Variablen gespeichert werden:

  • VariableEnvironment: Speichert Variablen, die mit var definiert wurden und nicht sein können gelöscht.
  • LexicalEnvironment: Speichert Variablen, die ohne var definiert sind. Es unterstützt das Löschen von Eigenschaften mithilfe des Löschoperators.

Mit var deklarierte Variablen werden in der VariableEnvironment gespeichert, die dem aktuellen Bereich zugeordnet ist. Das Entfernen dieser Variablen erfordert die Ausführung von Code in einem Auswertungskontext, der normalerweise nicht in browserbasierten Umgebungen verwendet wird.

Variablen, die ohne var definiert sind, befinden sich in der verschachtelten LexicalEnvironment. Wenn eine Variable in der aktuellen Umgebung nicht gefunden werden kann, durchsucht JavaScript die übergeordnete Umgebung. Letztendlich wird versucht, eine Eigenschaft vom globalen Objekt abzurufen. Eigenschaften von Objekten können gelöscht werden.

Hinweise:

  • Mit var definierte Variablen werden an die Spitze ihres Gültigkeitsbereichs gehoben, auch wenn sie später initialisiert werden , sie gelten weiterhin als von Anfang an definiert.
  • Der strenge Modus wirkt sich auf die Suchregeln für Variablen aus. Im strikten Modus können lexikalische Verweise, die im nicht strikten Modus in globale Eigenschaften aufgelöst worden wären, Fehler „nicht deklarierte Variable“ verursachen.

Das obige ist der detaillierte Inhalt vonWie deaktiviere ich JavaScript-Variablen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage