Das von ES6 eingeführte dritte Schlüsselwort der Deklaration ähnelt Let: const.
Schauen Sie sich die Verwendung an:
const c1 = 1; const c2 = {}; const c3 = []; Object.GetownPropertyDescriptor (Fenster, "C1") // Objekt {Wert: 1, beschreibbar: false, aufzählbar: true, konfigurierbar: false}Das obige Beispiel besagt, dass Sie C2 keine Werte zuweisen können, aber der Inhalt von C2 kann geändert werden, da C2 ein Objekt ist. Siehe das Beispiel:
C2.P1 = 1;
In ähnlicher Weise können Sie C3 auch Elemente hinzufügen, da C3 ein Array ist.
Es gibt ein weiteres Problem mit den Konstanten, dh Deklaration und Initialisierung müssen zusammen sein, und nach der Erklärung muss es initialisiert werden:
"Strikte"; const c4; // Uncornt SyntaxError: Unerwartetes Token;
Wenn Sie das Semikolon entfernen, werden Sie dennoch einen Fehler melden. Wir werden die Situation im Rahmen des Nicht-Streng-Modus hier nicht diskutieren. Wenn Sie interessiert sind, können Sie es selbst ausprobieren.
Die von const deklarierten Variablen ähneln denen, die von LET deklariert wurden. Die Differenz besteht darin, dass den von const deklarierten Variablen nur während der Deklaration Werte zugewiesen werden und nicht nach Belieben geändert werden können, da sie ansonsten SyntaxError (Syntaxfehler) verursacht.
const max_cat_size_kg = 3000; // korrekt max_cat_size_kg = 5000; // Syntax -Fehler (syntaxError) max_cat_size_kg ++; // Obwohl es sich geändert hat, verursacht es immer noch Syntaxfehler
Natürlich ist das Spezifikationsdesign klug genug. Nachdem Sie Variablen mit const deklariert haben, müssen Sie Werte zuweisen, andernfalls wird auch ein Syntaxfehler geworfen.
const thefairest; // Es ist immer noch ein Syntaxfehler, du unglücklicher Typ