Heim > Artikel > Web-Frontend > Was ist const in React?
Const in React ist: 1. Die von const deklarierte Variable ist ein Wert, der nicht geändert werden kann. 2. Der Gültigkeitsbereich von const ist der gleiche wie der des let-Befehls. 3. Die vom const-Befehl deklarierte Konstante wird nicht heraufgestuft 4. Die von const deklarierte Konstante ist auch die gleiche wie der let-Befehl. 5. Const deklariert eine schreibgeschützte Konstante.
Die Betriebsumgebung dieses Tutorials: Windows7-System, React17-Version. Diese Methode ist für alle Computermarken geeignet.
const in React ist:
1. Nach der Deklaration kann der Wert einer Konstante nicht mehr geändert werden.
const PI = 3.1415; PI // 3.1415 PI = 3; // TypeError: Assignment to constant variable.
Der obige Code zeigt, dass das Ändern des Werts einer Konstante zu einem Fehler führt.
2. Von const deklarierte Variablen sind Werte, die nicht geändert werden können. Das bedeutet, dass eine const-Variable sofort initialisiert werden muss und nicht für eine spätere Zuweisung übrig bleiben muss.
const foo; // SyntaxError: Missing initializer in const declaration
Der obige Code gibt an, dass für const ein Fehler gemeldet wird, wenn Sie nur deklarieren, ohne einen Wert zuzuweisen.
3. Der Gültigkeitsbereich von const ist derselbe wie der let-Befehl: Er ist nur innerhalb des Blockebenenbereichs gültig, in dem sich die Deklaration befindet.
if (true) { const MAX = 5; } MAX // Uncaught ReferenceError: MAX is not defined
4. Die vom const-Befehl deklarierten Konstanten werden nicht hochgestuft. Sie haben auch eine vorübergehende Totzone und können nur nach der deklarierten Position verwendet werden.
if (true) { console.log(MAX); // ReferenceError const MAX = 5; }
Der obige Code wird aufgerufen, bevor die Konstante MAX deklariert wird, und ein Fehler wird gemeldet.
5. Mit const deklarierte Konstanten können nicht wie let wiederholt deklariert werden.
var message = "Hello!"; let age = 25; // 以下两行都会报错 const message = "Goodbye!"; const age = 30;
6. Bei zusammengesetzten Variablen verweist der Variablenname nicht auf die Daten, sondern auf die Adresse, an der sich die Daten befinden. Der Befehl const stellt nur sicher, dass die Adresse, auf die der Variablenname zeigt, unverändert bleibt, garantiert jedoch nicht, dass die Daten an dieser Adresse unverändert bleiben. Daher müssen Sie beim Deklarieren eines Objekts als Konstante sehr vorsichtig sein.
const foo = {}; foo.prop = 123; foo.prop // 123 foo = {}; // TypeError: "foo" is read-only
Im obigen Code speichert die Konstante foo eine Adresse, die auf ein Objekt zeigt. Das Einzige, was unveränderlich ist, ist diese Adresse, das heißt, Sie können foo nicht auf eine andere Adresse verweisen, aber das Objekt selbst ist veränderbar, sodass Sie ihm immer noch neue Eigenschaften hinzufügen können.
Hier ist ein weiteres Beispiel.
const a = []; a.push('Hello'); // 可执行 a.length = 0; // 可执行 a = ['Dave']; // 报错
Im obigen Code ist die Konstante a ein Array. Das Array selbst ist beschreibbar, aber wenn a ein anderes Array zugewiesen wird, wird ein Fehler gemeldet.
7. Wenn Sie das Objekt wirklich einfrieren möchten, sollten Sie die Methode Object.freeze verwenden.
const foo = Object.freeze({}); // 常规模式时,下面一行不起作用; // 严格模式时,该行会报错 foo.prop = 123;
Im obigen Code zeigt die Konstante foo auf ein eingefrorenes Objekt, sodass das Hinzufügen neuer Attribute nicht funktioniert und im strikten Modus ein Fehler gemeldet wird.
8. Zusätzlich zum Einfrieren des Objekts selbst sollten auch die Eigenschaften des Objekts eingefroren werden. Unten finden Sie eine Funktion, die ein Objekt vollständig einfriert.
var constantize = (obj) => { Object.freeze(obj); Object.keys(obj).forEach( (key, value) => { if ( typeof obj[key] === 'object' ) { constantize( obj[key] ); } }); };
ES5 bietet nur zwei Möglichkeiten, Variablen zu deklarieren: den Befehl var und den Befehl function. Neben dem Hinzufügen von let- und const-Befehlen bietet ES6 auch zwei weitere Möglichkeiten zum Deklarieren von Variablen: Importbefehl und Klassenbefehl. Daher verfügt ES6 über insgesamt 6 Möglichkeiten, Variablen zu deklarieren.
Verwandte kostenlose Lernempfehlungen: Javascript (Video)
Das obige ist der detaillierte Inhalt vonWas ist const in React?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!