Wenn ichWird in ECMAScript/Javascript 6 ein IIFE für die Klasse benötigt?
Class Car {}
muss ich das wickeln mit unserer Funktion Schließung? Werden Var's zum Fenster gehievt? oder einfach nur zur Klasse? Wie sieht es mit der Transposition aus? Verwandelt Traceur/Babel es in ein IIFE und lassen Sie uns in Var's?
Muss ich brauche:
(function(){
Class Car() {}
}());
sicher zu sein?
Das hängt davon ab, ob Sie die Datei als Skript oder als Modul laden. Wie laden Sie die Datei? – loganfsmyth
Nativ ist es eine wirklich gute Frage. Getestet hier mit Edge, und obwohl ich eine 'car.js'-Datei mit dieser Klassendeklaration und eine 'new-car.js'-Datei mit dieser Klasse haben kann, wenn ich' Car' in die Konsole logge, zeigt es mir die Konstruktor, aber wenn ich 'window.Car' logge, wird 'undefined' angezeigt. – Buzinas
@Buzinas: Das ist ein bisschen anders. Lexikalische Deklarationen ('class',' let' und 'const') werden keine Eigenschaften des globalen Objekts. –