Heim  >  Artikel  >  Web-Frontend  >  JavaScript – ES6-Erklärung

JavaScript – ES6-Erklärung

巴扎黑
巴扎黑Original
2017-07-22 15:24:081168Durchsuche

Abschnitt 1 let

// ES6 – let

sei a = 1;

if (1 === a) {
sei b = 2 ;
}

for (let c = 0; c < 3; c++) {
// …
}

function getsDeclareAnotherOne() {
let d = 4;
}

console.log(a); // 1
console.log(b); // ReferenceError: b ist nicht definiert
console.log ( c); // ReferenceError: c ist nicht definiert
console.log(d); // ReferenceError: d ist nicht definiert

// window
console.log(window.a) ; // 1
console.log(window.b); // undefiniert
console.log(window.c); // undefiniert
console.log(window.d); // undefiniert
Wie wir sehen können, ist dieses Mal nur die Variable a als global deklariert. Let gibt uns eine Möglichkeit, blockbezogene Variablen zu deklarieren, die außerhalb davon undefiniert sind.

//todo

Die Die Verwendung von let und const ähnelt der von var. Beide werden zum Deklarieren von Variablen verwendet, in praktischen Anwendungen haben sie jedoch ihre eigenen speziellen Verwendungszwecke.

demo1
var name = 'shitu91'

if(true) {
var name = 'shituketang'
console.log(name) //shituketang
}

console.log(name) //shituketang
Verwenden Sie var. Die inneren Variablen, die Sie jetzt sehen, decken die äußeren Variablen ab. (Bereich) und Funktionsumfang gibt es keinen Bereich auf Blockebene.

Und let fügt JavaScript tatsächlich einen neuen Bereich auf Blockebene hinzu. Die damit deklarierten Variablen sind nur innerhalb des Codeblocks gültig, in dem sich der let-Befehl befindet.

let name = 'shitu91'
if (true) {
let name = 'shituketang'
console.log(name) //shituketang
}

console.log(name) //shitu91
demo2 gezählte Schleifenvariable als globale Variable durchgesickert
var a = [];
for (var i = 0; i < 10 ; i++) {
a[i] = function () {
console.log(i);
};
}
a6; // 10
Im obigen Code , die Variable i wird von var deklariert und ist im globalen Bereich gültig. Bei jeder Schleife überschreibt der neue i-Wert den alten Wert, sodass die endgültige Ausgabe der Wert von i in der letzten Runde ist.
Dieses Problem tritt bei Verwendung von let nicht auf.

var a = [];
for (let i = 0; i < 10; i++) {
a[i] = function () {
console.log(i );
};
}
a6; // 6
demo3
var clickBoxs = document.querySelectorAll('.clickBox')
for (var i = 0; i < ; clickBoxs.length; i++){
clickBoxs[i].onclick = function(){
console.log(i)

Wir hätten Gefällt mir Der Zweck besteht darin, auf verschiedene ClickBoxen zu klicken und unterschiedliche i anzuzeigen. Tatsache ist jedoch, dass die Ausgabe unabhängig von der ClickBox, auf die wir klicken, 5 ist. Werfen wir einen Blick darauf, wie man dazu Verschlüsse verwendet.

function iteratorFactory(i){
var onclick = function(e){
console.log(i)
}
return onclick;
}
var clickBoxs = document .querySelectorAll('.clickBox')
for (var i = 0; i < clickBoxs.length; i++){
clickBoxs[i].onclick = iteratorFactory(i)
}
const Wird auch zum Deklarieren von Variablen verwendet, es werden jedoch Konstanten deklariert. Nach der Deklaration kann der Wert einer Konstante nicht mehr geändert werden.
const PI = Math.PI

PI = 23 //Modulerstellung fehlgeschlagen: SyntaxError: /es6/app.js: „PI“ ist schreibgeschützt

Wenn wir versuchen, die Konstante zu ändern Beim Deklarieren von Konstanten meldet der Browser einen Fehler. Const hat ein gutes Anwendungsszenario, das heißt, Variablen, die deklariert werden, wenn wir auf Bibliotheken von Drittanbietern verweisen, können Fehler vermeiden, die durch versehentliches Umbenennen in der Zukunft verursacht werden: ')
// todo

Variablen, die mit dem Schlüsselwort let deklariert wurden, verfügen nicht über die Funktion zum Heben von Variablen.
let und const werden nur im nächsten Block (in geschweiften Klammern) deklariert. Gültig

Wann Wenn Sie eine konstante const-Deklaration verwenden, verwenden Sie bitte Variablen in Großbuchstaben, z. B.: CAPITAL_CASING

const muss bei der Deklaration zugewiesen werden
Let:

Neue Schlüsselwörter von ES6 hinzugefügt, die es uns ermöglichen, die Art und Weise zu ändern, wie wir mit Variablen arbeiten . JavaScript:

var name = 'Max';

console.log(name;

let new_name = 'Max';
console.log (new_name);

Konsole:


"Max"
"Max"

Hier sehen wir, dass sowohl let als auch var dasselbe tun. Was ist also der Unterschied?


Die Verwendung von let ermöglicht es uns Kontrollvariablenbereich. JavaScript:

if(true) {

let age = 24; // im Gültigkeitsbereich der 'if'-Anweisung

}

console .log(age); // nicht im Gültigkeitsbereich der „if“-Anweisung
Konsole:

"Fehler"
"Referenzfehler: Alter ist nicht definiert

Als weiteres Beispiel bei der Verwendung von Variablen in einer for-Schleife , der Index wird nicht mehr außerhalb der Schleife verwendet!

Das obige ist der detaillierte Inhalt vonJavaScript – ES6-Erklärung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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