2016-05-04 6 views
0

Ich lerne Javascript. Und ich habe bemerkt, dass der Ausbilder Variablen auf zwei Arten machte. wurde zum ersten Mal (zum Beispiel):Gibt es einen Unterschied/Vorteil der Verwendung von var vor einem Variablennamen in Javascript?

var name ="Any string here"; 

und zweite Methode wurde einfach die Variablennamen zu schreiben, ohne var Schreiben zuerst:

name="Any string here"; 

Und das Ergebnis war gleich. Also, gibt es einen Unterschied zwischen diesen beiden? Welcher ist besser zu benutzen?

+3

Mögliche Duplikat verursachen [Was die Funktion des Schlüsselwort var ist, und wenn es zu benutzen (oder weglassen)?] (Http: // Stackoverflow .com/questions/1470488/what-is-the-function-of-the-var-keyword-und-wann-benutzen-es-oder-weg-it) –

Antwort

1
  • Zunächst einmal ist es eine schlechte Praxis nicht var vor Variable Erklärung zu schreiben.
  • Zweites Problem ist eine globale Deklaration der Variablen ohne var.
  • Drittens in strict mode mit Variable ohne Deklaration wird Exception
+0

würdest du bitte deinen dritten Punkt mit einem Beispiel erklären? –

+0

In JS können Sie Ihren Code im 'strict mode' schreiben. Es hilft Ihnen, viele seltsame Dinge und seltsames Verhalten Ihres Codes zu vermeiden. Um den strikten Modus zu aktivieren, müssen Sie nur '' use strict ";' in der ersten Zeile Ihrer JS-Datei (oder Funktion, wenn Sie den strikten Modus nur in einer Funktion aktivieren wollen) schreiben. Sie können hier mehr darüber lesen https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Strict_mode – steppefox

+0

Wenn Sie also strikten Modus in Ihrem Code aktiviert haben und versuchen, Variable ohne Deklaration zu verwenden, Es wird einen Fehler verursachen. Zum Beispiel: '" verwenden Sie streng "; a = 5; // Exception' – steppefox

2

Auslassen var macht es zu einer globalen Variable, also wenn Sie name mehrere Stellen im Code haben, werden sie einander überschreiben.

+0

und wenn eine Variable innerhalb einer Funktion definiert ist ohne var davor zu schreiben, dann wird es eine lokale Variable sein. Habe ich recht ? –

+0

Nein - Wenn Sie bei der Deklaration nicht var verwenden, wird es zu einer globalen Variablen, unabhängig davon, wo Sie es deklarieren. –

+0

okay, danke :) –

Verwandte Themen