Vor 2015 war die Verwendung des var
Schlüsselwort war der einzige Weg, um deklarieren ein JavaScript variabel .
Nach ES6 (eine JavaScript-Version), sie erlaubt 2 neue Schlüsselwörter lassen Sie & const .
let
= kann neu zugewiesen werden
const
= kann nicht neu zugewiesen werden ( const, kommt von constant, Kurzform 'const' )
Beispiel:
-
Nehmen wir an, Sie geben einen Ländernamen / Namen Ihrer Mutter an, const
ist hier am besten geeignet, weil die Wahrscheinlichkeit geringer ist, dass der Name des Landes oder der Name der Mutter früher oder später geändert wird.
-
Ihr Alter, Gewicht, Gehalt, Geschwindigkeit eines Fahrrads und mehr wie diese Arten von Daten, die sich häufig ändern oder neu zuweisen müssen. diese Situationen, let
verwendet wird.
133 Stimmen
ECMAScript ist der Standard und
let
ist enthalten in der Entwurf der 6. Auflage und wird höchstwahrscheinlich in der endgültigen Spezifikation enthalten sein.12 Stimmen
Véase kangax.github.io/es5-compat-table/es6 für eine aktuelle Unterstützungsmatrix der ES6-Funktionen (einschließlich let). Zum Zeitpunkt der Erstellung dieses Artikels unterstützen Firefox, Chrome und IE11 diese Funktion (obwohl ich glaube, dass die Implementierung von FF nicht ganz Standard ist).
37 Stimmen
Die längste Zeit wusste ich nicht, dass Variablen in einer for-Schleife auf die Funktion, in die sie eingeschlossen war, skaliert wurden. Ich erinnere mich, dass ich dies zum ersten Mal herausfand und dachte, es sei sehr dumm. Jetzt weiß ich allerdings, wie die beiden aus unterschiedlichen Gründen verwendet werden können und dass man in manchen Fällen eine Variable in einer for-Schleife verwenden möchte, ohne dass sie auf den Block skaliert ist.
1 Stimmen
In dem Maße, wie sich die Unterstützung von ES6-Funktionen verbessert, verlagert sich der Schwerpunkt der Frage nach der Akzeptanz von ES6 von der Unterstützung von Funktionen auf Leistungsunterschiede. Als solches, Hier ist eine Website, die ich gefunden Benchmarking Leistungsunterschiede zwischen ES6 und ES5 . Beachten Sie, dass sich dies im Laufe der Zeit wahrscheinlich ändern wird, da die Engines für ES6-Code optimiert werden.