Vorwort: 1. Bereiche werden in verschiedenen Formen ausgedrücktvar ist Funktionsumfang, let ist Blockumfang { var Affe = "Xun Wukong"; let pig='Schweinekotelett-Abdeckung'; } console.log(monkey); //Ausgabe undefiniert console.log(pig); //Fehler: Pig ist nicht definiert Wie aus dem obigen Code ersichtlich ist, sind mit 2. Der Unterschied zwischen variabler Promotion und Nicht-PromotionMit var deklarierte Variablen werden angehoben, mit let deklarierte Variablen werden jedoch nicht angehoben. console.log(Affe); //undefiniert var Affe = "Xun Wukong"; console.log(pig); //Fehler: Pig ist nicht definiert let pig='Schweinekotelett-Abdeckung'; Warum wird nach derselben Logik eine mit var deklarierte Variable als undefiniert angezeigt, wenn sie vor ihrer Deklaration aufgerufen wird, während eine mit let deklarierte Variable eine Ausnahme auslöst, wenn sie vor ihrer Deklaration aufgerufen wird? Dies ist der Unterschied zwischen den beiden bei der Variablenpromotion. Mit var deklarierte Variablen haben eine Variablenpromotion, während dies bei mit let deklarierten Variablen nicht der Fall ist. Was ist also variable Promotion? Ich werde hier keine konzeptionelle Beschreibung geben. Ich werde nur mein persönliches Verständnis davon äußern, dass der obige Code tatsächlich dem Folgenden entspricht: var Affe; console.log(Affe); //undefiniert Affe = „Xun Wukong“; console.log(pig); //Fehler: Pig ist nicht definiert let pig='Schweinekotelett-Abdeckung'; Sehen Sie den Unterschied? Die mit var deklarierte Variable wird zur Definition an den Anfang des Gültigkeitsbereichs extrahiert, aber es wird kein Wert zugewiesen. Die Zuweisungsoperation befindet sich noch in Ihrem Code. Wenn Sie also die mit 3. Unterschiede bei temporären toten ZonenTemporäre Totzone: Wenn eine Variable in einen Bereich aufgenommen wird und es im äußeren Bereich eine Variable mit demselben Namen gibt, hat dies keine Auswirkungen auf den äußeren Bereich, selbst wenn die Variable im Bereich geändert wird. Die spezifischen Leistungen sind wie folgt: für(var i=0;i<5;i++){ setzeTimeout(Funktion(){ Konsole.log(i) },1000) } für (lass i = 0; i < 5; i++) { setzeTimeout(Funktion(){ Konsole.log(i) },1000) } Was sind die Ergebnisse der Ausführung dieser beiden Codes? Das Ergebnis des ersten Codes ist, dass nach 1 Sekunde 5 5er nacheinander gedruckt werden. Das Ergebnis des zweiten Codes ist, dass nach 1 Sekunde 0, 1, 2, 3, 4 nacheinander gedruckt werden. Warum besteht dieser Unterschied? Da die Variable i im ersten Code durch das Schlüsselwort var deklariert wird, gibt es keine kritische Totzone, d. h. die Variable i, auf die Sie in Die Variable i im zweiten Code wird durch das Schlüsselwort let deklariert, wodurch eine kritische Totzone entsteht. Die Variable i in 4. Im selben Kontext kann var wiederholt deklariert werden, let jedoch nichtlass monkey='Xun Wukong'; let monkey = '逼马吻'; //Fehler: Bezeichner 'a' wurde bereits deklariert var pig = 'Schweinekotelett-Abdeckung'; var pig = 'pig anal fissure'; //Normaler Zugriff, der Wert der Variable pig wird ersetzt Dies ist das Ende dieses Artikels über den Unterschied zwischen var und let in JavaScript. Weitere Informationen zu var und let in JavaScript finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: So finden und löschen Sie doppelte Zeilen in MySQL
>>: Beispielcode zum Zeichnen von Doppelpfeilen in gängigen CSS-Stilen
Warum brauchen wir Master-Slave-Replikation? 1. I...
Vorwort Die erstmals in ES6 eingeführte „Destruct...
Dieser Artikel stellt einige häufig verwendete Fu...
Eine Forderung Im Allgemeinen hat ein Unternehmen...
Zunächst müssen wir wissen, was ein Zustandsmanag...
Inhaltsverzeichnis Vorwort Fehlergrenze Jenseits ...
rahmen: Stil = „Rahmenstil: durchgezogen; Rahmenbr...
Verwenden Sie Textausrichtung, Rand: 0 automatisc...
Fügen Sie dem el-form-Formular Regeln hinzu: Defi...
!DOCTYPE Gibt die Document Type Definition (DTD) ...
Nachfragehintergrund In letzter Zeit plane ich, V...
Inhaltsverzeichnis 1. Beispiel für die Anzeige de...
Inhaltsverzeichnis Einfache Fabrik Fabrikmethode ...
Ich habe lange mit einem Problem gekämpft und das...
Inhaltsverzeichnis Vorwort HTTP HTTP-Server Datei...