Heim > Web-Frontend > js-Tutorial > Warum führt das Weglassen von „var' in JavaScript zu unerwarteten globalen Variablen und Fehlern?

Warum führt das Weglassen von „var' in JavaScript zu unerwarteten globalen Variablen und Fehlern?

Patricia Arquette
Freigeben: 2024-11-03 09:25:29
Original
896 Leute haben es durchsucht

Why Does Omitting

Die Gefahren globaler Variablendeklarationen

Im Bereich JavaScript werden Entwickler seit langem vor einer Gefahr gewarnt, die als „Der Horror impliziter Globals“ bekannt ist. Dies tritt auf, wenn eine Variable ohne das Schlüsselwort „var“ deklariert wird.

Entgegen der landläufigen Meinung bringt das Weglassen von „var“ keine wesentlichen Leistungsvorteile. Stattdessen wird eine globale Variable erstellt, was zu unbeabsichtigtem Variablenverlust und potenziellen Konflikten mit anderen Skripten auf der Seite führen kann.

Um dieses Problem zu veranschaulichen, betrachten Sie die folgende Funktion:

<code class="javascript">function foo() {
    variable1 = 5;
    varaible2 = 6;
    return variable1 + variable2;
}</code>
Nach dem Login kopieren

Aufgrund eines Tippfehlers in der Deklaration von „Varaible2“ gibt die Funktion NaN anstelle des erwarteten Werts von 11 zurück. Darüber hinaus wird versehentlich eine globale Variable mit dem Namen „Varaible2“ erstellt, auf die von außerhalb der Funktion zugegriffen werden kann:

<code class="javascript">console.log(foo());     // NaN
console.log(varaible2); // 6?!?!?!</code>
Nach dem Login kopieren

Dieses unerwartete Verhalten kann zu verwirrenden und schwer zu debuggenden Fehlern in Ihrem Code führen. Um diese Fallstricke zu vermeiden, ist es wichtig, beim Deklarieren von Variablen sowohl innerhalb als auch außerhalb von Funktionen immer das Schlüsselwort „var“ zu verwenden.

Das obige ist der detaillierte Inhalt vonWarum führt das Weglassen von „var' in JavaScript zu unerwarteten globalen Variablen und Fehlern?. 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