


So deklarieren Sie schreibgeschützte Konstanten in es6
In es6 können Sie das Schlüsselwort const verwenden, um schreibgeschützte Konstanten zu deklarieren. Die Syntax lautet „const konstanter Name = konstanter Wert;“. Nach der Deklaration muss die Konstante initialisiert werden und der initialisierte Wert kann nicht geändert werden. Als const deklarierte Konstanten gehören zum Blockbereich und unterliegen der „temporären Totzone“. Sie erstellen keine globalen Eigenschaften im Fenster und können nicht neu zugewiesen oder neu deklariert werden.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, ECMAScript Version 6, Dell G3-Computer.
In es6 können Sie das Schlüsselwort const verwenden, um schreibgeschützte Konstanten zu deklarieren.
es6 const-Schlüsselwort
const deklariert eine schreibgeschützte Konstante. Nach der Deklaration muss eine Konstante initialisiert werden und der initialisierte Wert kann nicht geändert werden.
const PI = 3.1415; PI // 3.1415 PI = 3; // TypeError: Assignment to constant variable.
const-Konstanten befolgen die folgenden Regeln:
gehört zum Blockbereich.
Vorbehaltlich der „vorübergehenden Totzone“.
Es werden keine globalen Eigenschaften im Fenster erstellt.
Nicht weiterverteilbar.
kann nicht angepasst werden.
const Sobald eine Variable deklariert ist, muss sie sofort initialisiert werden.
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.
Der Gültigkeitsbereich von const ist derselbe wie der let-Befehl: Er ist nur innerhalb des Blockebenenbereichs gültig, in dem er deklariert ist.
if (true) { const MAX = 5; } MAX // Uncaught ReferenceError: MAX is not defined
Die vom const-Befehl deklarierten Konstanten werden ebenfalls nicht hochgestuft. Es gibt auch eine vorübergehende Totzone und kann 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.
Die von const deklarierte Konstante kann nicht wie let wiederholt deklariert werden.
var message = "Hello!"; let age = 25; // 以下两行都会报错 const message = "Goodbye!"; const age = 30;
Das Wesen von const
const garantiert tatsächlich, dass nicht der Wert der Variablen nicht geändert werden kann, sondern dass die in der Speicheradresse gespeicherten Daten, auf die die Variable zeigt, nicht geändert werden können. Bei einfachen Datentypen (numerische Werte, Zeichenfolgen, boolesche Werte) wird der Wert an der Speicheradresse gespeichert, auf die die Variable zeigt, und entspricht daher einer Konstante. Bei zusammengesetzten Datentypen (hauptsächlich Objekten und Arrays) speichert die Speicheradresse, auf die die Variable zeigt, nur einen Zeiger auf die tatsächlichen Daten. Const kann nur garantieren, dass dieser Zeiger fest ist (dh er zeigt immer auf eine andere feste Adresse). Ob die Datenstruktur, auf die es verweist, variabel ist, liegt völlig außer Kontrolle. Daher müssen Sie sehr vorsichtig sein, wenn Sie ein Objekt als Konstante deklarieren.
const foo = {}; // 为 foo 添加一个属性,可以成功 foo.prop = 123; foo.prop // 123 // 将 foo 指向另一个对象,就会报错 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.
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.
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, i) => { if ( typeof obj[key] === 'object' ) { constantize( obj[key] ); } }); };
【Verwandte Empfehlungen: Javascript-Video-Tutorial, Programmiervideo】
Das obige ist der detaillierte Inhalt vonSo deklarieren Sie schreibgeschützte Konstanten in es6. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Eine Konstante wird auch als Variable bezeichnet. Sobald sie definiert ist, ändert sich ihr Wert während der Ausführung des Programms nicht. Daher können wir eine Variable als Konstante deklarieren, die auf einen festen Wert verweist. Es wird auch Text genannt. Konstanten müssen mit dem Schlüsselwort Const definiert werden. Syntax Die Syntax der in der Programmiersprache C verwendeten Konstanten ist wie folgt: consttypeVariableName; (oder) Verschiedene Arten von Konstanten Die verschiedenen Arten von Konstanten, die in der Programmiersprache C verwendet werden, sind wie folgt: Ganzzahlige Konstanten – Beispiel: 1,0 ,34, 4567 Gleitkommakonstanten – Beispiel: 0,0, 156,89, 23,456 Oktal- und Hexadezimalkonstanten – Beispiel: Hex: 0x2a, 0xaa.. Oktal

Konstanten und Variablen werden zum Speichern von Datenwerten in der Programmierung verwendet. Eine Variable bezieht sich normalerweise auf einen Wert, der sich im Laufe der Zeit ändern kann. Eine Konstante ist ein Variablentyp, dessen Wert während der Programmausführung nicht geändert werden kann. In Python sind nur sechs integrierte Konstanten verfügbar: False, True, None, NotImplemented, Ellipsis(...) und __debug__. Abgesehen von diesen Konstanten verfügt Python über keine integrierten Datentypen zum Speichern konstanter Werte. Beispiel Ein Beispiel für eine Konstante wird unten gezeigt – False=100-Ausgaben. SyntaxError:cannotassigntoFalseFalse ist eine integrierte Konstante in Python, die zum Speichern boolescher Werte verwendet wird

async ist es7. Async und Wait sind neue Ergänzungen zu ES7 und Lösungen für asynchrone Vorgänge. Man kann sagen, dass Async/Await syntaktischer Zucker für Co-Module und Generatorfunktionen ist und js asynchronen Code mit klarerer Semantik löst. Wie der Name schon sagt, bedeutet Async „asynchron“. Async wird verwendet, um zu deklarieren, dass eine Funktion asynchron ist. Es gibt eine strikte Regel zwischen Async und Wait.

Eine konstante Variable ist eine Variable, deren Wert fest ist und von der im Programm nur eine Kopie vorhanden ist. Sobald Sie eine konstante Variable deklariert und ihr einen Wert zugewiesen haben, können Sie ihren Wert im gesamten Programm nicht mehr ändern. Im Gegensatz zu anderen Sprachen unterstützt Java Konstanten nicht direkt. Sie können jedoch weiterhin eine Konstante erstellen, indem Sie eine Variable als „statisch“ und „final“ deklarieren. Statisch – Sobald Sie eine statische Variable deklarieren, werden diese zur Kompilierungszeit in den Speicher geladen, d. h. es ist nur eine Kopie verfügbar. Final – Sobald Sie eine Final-Variable deklariert haben, kann ihr Wert nicht mehr geändert werden. Daher können Sie in Java eine Konstante erstellen, indem Sie die Instanzvariable als statisch und endgültig deklarieren. Beispiel-DemonstrationsklasseData{&am

Schritte: 1. Konvertieren Sie die beiden Arrays jeweils in Mengentypen mit der Syntax „newA=new Set(a); newB=new Set(b);“ 2. Verwenden Sie has() und filter(), um den Differenzsatz zu finden Mit der Syntax „new Set([...newA].filter(x =>!newB.has(x)))“ werden die Differenzmengenelemente in eine Mengensammlung aufgenommen und zurückgegeben. 3. Verwenden Sie Array. from, um die Menge in einen Array-Typ umzuwandeln, Syntax „Array.from(collection)“.

Aus Gründen der Browserkompatibilität. Als neue Spezifikation für JS fügt ES6 viele neue Syntax und API hinzu. Moderne Browser bieten jedoch keine umfassende Unterstützung für die neuen Funktionen von ES6, daher muss ES6-Code in ES5-Code konvertiert werden. In den WeChat-Webentwicklertools wird babel standardmäßig verwendet, um den ES6-Syntaxcode des Entwicklers in ES5-Code umzuwandeln, der von allen drei Terminals gut unterstützt wird und Entwicklern hilft, Entwicklungsprobleme zu lösen, die durch unterschiedliche Umgebungen nur im Projekt verursacht werden Option „ES6 bis ES5“.

In es5 können Sie die for-Anweisung und die Funktion indexOf() verwenden, um eine Array-Deduplizierung zu erreichen. Die Syntax „for(i=0;i<array length;i++){a=newArr.indexOf(arr[i]);if( a== -1){...}}". In es6 können Sie den Spread-Operator Array.from() und Set verwenden, um Duplikate zu entfernen. Sie müssen zuerst das Array in ein Set-Objekt konvertieren, um Duplikate zu entfernen, und dann den Spread-Operator oder die Funktion Array.from() verwenden Konvertieren Sie das Set-Objekt zurück in ein Array.

In es6 handelt es sich bei der temporären Totzone um einen Syntaxfehler, der sich auf die Befehle let und const bezieht, die dafür sorgen, dass der Block einen geschlossenen Bereich bildet. Bevor eine Variable innerhalb eines Codeblocks mit dem Befehl let/const deklariert wird, ist sie nicht verfügbar und gehört zur „toten Zone“ der Variablen, bevor die Variable deklariert wird. ES6 legt fest, dass die Variablenheraufstufung in temporären Totzonen und in let- und const-Anweisungen nicht erfolgt, hauptsächlich um Laufzeitfehler zu reduzieren und zu verhindern, dass die Variable vor ihrer Deklaration verwendet wird, was zu unerwartetem Verhalten führen kann.
